update person set name = #{name} where id = #{id}
这里#{name}和#{id}自动调用Person中的getter方法
所以没有getter方法会出错。
同理 select查询的时候会调用setter方法,没有会报错。
parameterType是传参类型,sqlSession.selectList(“person.updatePerson”,person),这里传参类型是Person类的对象。
配置文件标签
注意:
文档结构严格按照官网要求配置,核心配置文件有严格的配置顺序
-
properties标签
文件中可使用properties标签定义属性,供配置引用。${value}引用值。比如:
还可以定义在外部文件中。比如:
创建文件db.properties。
driver=com.mysql.cj.jdbc.Driver url=jdbc:mysql://localhost:3306/student?serverTimezone=UTC&useSSL=false&characterEncoding=UTF-8 username=root password=123456
注意:这里路径参数拼接,不能用&了,直接用&。
然后mybatis-config.xml可以这么写
- typeAliases(别名)
可以为某个类指定别名,比如
也可为某一个包下的全部类型起别名
这里的别名即是类名
- mappers(映射)
引入sql映射文件
方法一:直接引入映射文件
方法二:还有一种常用写法,是使用接口代理
这里AuthorMapper、BlogMapper、PostMapper全是接口
方法三:或者直接引入一个包里的全部接口
方法四:使用完全限定资源定位符(URL)
就类似file://D:/PersonMapper.xml。 这种方法很少用。
最常用的是接口代理方法。
mybatis核心流程- 读取核心配置文件,加载数据连接信息和sql语句
- 根据配置文件,使用SqlSessionFactoryBuilder创建工厂对象。
- 使用工厂对象,创建sqlSession对象(数据操作核心对象)
- 执行数据操作



