Mybatis 学习笔记之 输入输出映射(五)

一、parameterType(输入映射)

比如说:要用到复杂的联合查询时,传入的查询条件很复杂(可能包含用户信息,商品信息等多个不同实体类),这时候该怎么办? 通常的做法是 : 定义包装类型的实体类(pojo),在包装类型的 pojo 中将复杂查询条件包装进去

1.1 定义一个包装实体类:


1.2 UserMapper.xml:


1.3 UserMapper.java:


1.4 JunitTest 测试类:

创建会话工厂:(@Before 注释的函数在 @Test 函数之前发生





二、resultMap(高级输出映射)

mybatis 中使用 resultMap 完成高级输出结果映射。

如果查询出来的列名和 pojo 的属性名不一致,通过定义一个 resultMap 对列名和 pojo 属性名之间作一个映射关系。

2.1 定义 resultMap


2.2 使用 resultMap 作为 statement 的输出映射类型


这里用到了 sql 片段 和 foreach :


2.3 输入类型也是包装UserQueryVo:

结合上一节的描述:


2.5 UserMapper.java:

2.6  JunitTest 测试类:

2.7 运行结果:


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值