本博客源码下载:戳我一下
Mybatis学习笔记汇总:戳我一下
一、什么是动态sql
mybatis
核心对sql
语句进行灵活操作,通过表达式进行判断,对sql
进行灵活拼接、组装。
二、if
语句
1、配置UserMapper.xml
<!-- 用户信息的综合查询总数 -->
<select id="findUserCount" parameterType="UserQueryVo" resultType="int">
select count(*) from user
<!--
where可以自动的去掉条件中的第一个and
-->
<where>
<if test="userCustom!=null">
<if
test="userCustom.sex!=null and userCustom.sex!=''">
and user.sex=#{userCustom.sex}
</if>
<if test="userCustom.username!=null and userCustom.username!=''">
and user.username like '%${userCustom.username}%'
</if>
</if>
</where>
</select>
2、测试:
void testFindUserCount() throws Exception {
SqlSession sqlSession = sessionFactory.openSession();
//得到UserMapper对象,Mybatis自动生成mapper代理对象
UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
//调用userMapper方法
//创建包装对象,设置查询条件
UserQueryVo userQueryVo = new UserQueryVo();
UserCustom userCustom = new UserCustom()