标签:setter 删除语句 one 查询语句 ref 入参 namespace 引用 区分
1.使用MyBatis实现条件查询
(1)sql映射文件
<1>用于区分不同的mapper,全局唯一
<2>绑定DAO接口,即面向接口编程。当namespace绑定某一接口之后,可以不用写该接口的实现类,MyBatis会通过接口的完整限定名查找到对应的mapper配置来执行SQL语句。因此namespace的命名必须要跟接口同名。
2.使用resultMap完成查询结果的展现
(1)resultType
resultType直接表示返回类型,包括基础数据类型和复杂数据类型
(2)resultMap
resultMap则是对外部resultMap定义的引用,对应外部resultMap的id,表示返回结果映射到哪一个resultMap上。它的应用场景一般是:数据库字段信息与对象属性不一致或者需要做复杂的联合查询以便自由控制映射结果
(3)resultType和resultMap的关联
在MyBatis进行查询映射的时候,其实查询出来的每个字段值都放在一个对应的Map里面,其中键是字段名,值则是其对应的值。当select元素提供的返回类型属性是resultType的时候,MyBatis会将Map里面的键值对取出赋值给resultType所指定的对象对应的属性(即调用对应的对象里的属性的setter方法进行填充)。
resultType属性和resultMap属性绝对不能同时存在
3.使用@Param注解实现多参数入参
4.使用resultMap实现高级结果映射
(4.1)association
association仅处理一对一的关联关系
(4.2)collection
5.resultMap自动映射级别和MyBatis缓存
(1)MyBatis对resultMap自动映射的三个匹配级别:
标签:setter 删除语句 one 查询语句 ref 入参 namespace 引用 区分
原文地址:https://www.cnblogs.com/bokeboke/p/9198526.html