where可以自动去掉条件中的第一个and
–>
and user.sex = #{userCustom.sex}
and user.username LIKE ‘%${userCustom.username}%’
测试代码
==========================================================================
//用户信息的综合 查询
@Test
public void testFindUserList() throws Exception {
SqlSession sqlSession = sqlSessionFactory.openSession();
//创建UserMapper对象,mybatis自动生成mapper代理对象
UserMapper userMapper = sqlSession.getMapper(UserMapper.class);
//创建包装对象,设置查询条件
UserQueryVo userQueryVo = new UserQueryVo();
UserCustom userCustom = new UserCustom();
//由于这里使用动态sql,如果不设置某个值,条件不会拼接在sql中
//userCustom.setSex(“1”);
userCustom.setUsername(“小明”);
userQueryVo.setUserCustom(userCustom);
//调用userMapper的方法
List list = userMapper.findUserList(userQueryVo);
System.out.println(list);
}
sql片段
===========================================================================
将上边实现的动态sql判断代码块抽取出来,组成一个sql片段。其它的statement中就可以引用sql片段。方便程序员进行开发。
定义sql片段
发表评论