首先查看bean 和数据库
正常查询是无法赋值的,需要使用自定义封装
resultmap的property是bean的全类名
id标签是用来封装主键属性的 property 是bean中的属性,column是表中查询出的属性
除了主键其他的属性封装均使用result标签
写好后,在对应操作标签中将返回类型的属性变成resultMap值为resultmap标签的id
查询结果
在遇到对象的属性是其他的对象时,建议使用association标签封装
遇到对象的属性是一个集合时,建议使用collection标签封装
封装对象时如果有个值想要通过调用查询获得,可以使用查询属性完成
select是方法全类名
column是传入方法的参数
注意:使用select属性时,无论你查询哪个属性,他都会运行2条SQL语句
比如:钥匙类中有一个锁类型的变量,锁变量使用select属性查询,当我们查询的时候只查询锁的名字属性,他也会加载2条SQL
想要避免,需要在没有mybatis系统配置文件中使用setting的延迟加载和按需加载
这样只有当你查询锁对象时,才会调用查询锁的SQL语句
如果想让你的select操作避免延迟查询和按需查询就需要在select标签内的association标签中添加属性
lazy是认同懒查询(认同按需查询和延迟查询)
eager是不认同懒查询会在调用时直接查询出2个SQL
mybatis自定义封装规则和分布式查询和懒查询
最新推荐文章于 2024-03-21 23:41:58 发布