概述
Mybatis的parameterType和resultType&resultMap应用
(尊重劳动成果,转载请注明出处:https://blog.csdn.net/qq_39778516/article/details/84143961 consistencely的博客)
1. parameterType(输入类型)
1.1 传递简单类型
使用#{}占位符,或者${}进行sql拼接。
1.2 传递pojo对象
Mybatis使用ognl表达式解析对象字段的值,#{}或者${}括号中的值为pojo属性名称。
1.3 传递pojo包装对象
开发中通过可以使用pojo传递查询条件。
查询条件可能是综合的查询条件,不仅包括用户查询条件还包括其它的查询条件(比如查询用户信息的时候,将用户购买商品信息也作为查询条件),这时可以使用包装对象传递输入参数。
包装对象:Pojo类中的一个属性是另外一个pojo。
需求:根据用户名模糊查询用户信息,查询条件放到QueryVo的user属性中。
1.3.1 编写QueryVo
1.3.2 Mapper.xml文件
1.3.3 Mapper接口
1.3.4 测试方法
2. resultType(输出类型)
2.1 输出简单类型
需求:查询用户表数据条数
2.1.1 Mapper.xml文件
2.1.2 Mapper接口
2.1.3 测试方法
3.输出结果resultMap
resultType可以指定将查询结果映射为pojo,但需要pojo的属性名和sql查询的列名一致方可映射成功。如果sql查询字段名和pojo的属性名不一致,可以通过resultMap将字段名和属性名作一个对应关系 ,resultMap实质上还需要将查询结果映射到pojo对象中。
resultMap可以实现将查询结果映射为复杂类型的pojo,比如在查询结果映射对象中包括pojo和list实现一对一查询和一对多查询。
需求:查询订单表order的所有数据
3.1.1 声明pojo对象
由于上边的mapper.xml中sql查询列(user_id)和Order类属性(userId)不一致,所以查询结果不能映射到pojo中。
需要定义resultMap,把orderResultMap将sql查询列(user_id)和Order类属性(userId)对应起来
3.1.2 Mapper.xml文件
3.1.3 Mapper接口
3.1.4 测试方法
最后
以上就是完美百合为你收集整理的Mybatis的parameterType和resultType&resultMap应用的全部内容,希望文章能够帮你解决Mybatis的parameterType和resultType&resultMap应用所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复