博客
关于我
每日总结[5 20191005]MyBatis之输入输出映射
阅读量:325 次
发布时间:2019-03-04

本文共 1213 字,大约阅读时间需要 4 分钟。

输入输出映射部分

为了实现Mybatis的动态代理,我们可以按照以下步骤进行配置。首先,创建一个新的Mapper包,其下包含接口UserMapper和对应的UserMapper.xml文件。在SqlMapConfig.xml中添加如下配置:

这会使Mybatis扫描指定包中的接口,并根据接口定义生成相应的SQL映射文件。在接口UserMapper中定义需要与UserMapper.xml中的statement一致的方法。

为了支持动态查询需求,我们可以创建一个扩展类UserEx和一个包装类UserPacking。UserPacking类中需要定义一个UserEx类型的属性,以便在接口中通过参数传递必要的条件。

以下是实现需求1的具体配置:

需求1:支持条件查询

在UserMapper.xml中配置如下SQL:

为了提取重复的判断逻辑,可以将条件判断部分单独定义为一个SQL片段:

usersex=#{userEx.sex}
and username like '%${userEx.name}%'

在主查询中引用该片段:

需求2:批量查询

为了支持批量查询,我们可以在UserPacking类中添加一个ids属性,并在接口中使用foreach循环来处理多个ID的查询。以下是实现示例:

需求3:结果字段映射

为了将数据库中的字段映射到对象属性上,我们可以使用resultmap来定义字段别名映射。以下是实现示例:

在主查询中引用结果映射:

通过以上配置,我们可以实现动态代理、条件查询、批量查询以及结果字段映射等功能。在实际应用中,可以根据具体需求调整SQL片段和结果映射逻辑。

转载地址:http://qbjh.baihongyu.com/

你可能感兴趣的文章
Python3学习笔记3,变量、运算符
查看>>
Python3学习笔记(urllib模块的使用)
查看>>
python3安装scapy_Linux下安装scapy-python3
查看>>
python3实现socket通信
查看>>
Python关于numpy.transpose函数详细解析附代码
查看>>
Python3导入自定义模块的3种方式
查看>>
python3打开txt文件_使用Python 3从文本文件读取句子并添加到列表中
查看>>
python3爬虫抓取智联招聘职位信息代码
查看>>
Python3爬虫数据入数据库---把爬取到的数据存到数据库,带数据库去重功能
查看>>
python3的 pymysql把mysqldb库取代了,让python 3支持mysqldb的解决方法
查看>>
Python3笔记——IDE的选择
查看>>
python3简单使用requests 用户代理,cookie池
查看>>
Python3组播通信编程实现教程(发送者+接收者)
查看>>
Python3编写网络爬虫10-数据存储方式三-CSV文件存储
查看>>
python3读取redis返回数据带有'b'的问题
查看>>
Python3连接MySQL
查看>>
Python关于isinstance函数的解析 | 附Demo(全)
查看>>
Python3:setup.py:完成所有任务的PIP安装(Build_ext+Install)
查看>>
python4.0 gil_Python 并发编程系列--1、浅谈GIL历史及对多线程的影响
查看>>
python60行绘图程序_天底下最简单的QT画图板,就一个类,60行代码
查看>>