介绍
使用MyBatis逆向工程,可以根据数据库中的表自动生成mapper.java、mapper.xml、pojo等文件。
在构建完Example类时就可以使用tk.mybatis进行条件化查询。
用法
1.条件化查询的的关键是tk.mybatis
中的Example
的构建
2.构建完Example
类后就可以通过Mapper
中自带的selectByExample
方法进行搜索
public AdminUser queryAdminByUsername(String username) {
Example adminExample = new Example(AdminUser.class);
Example.Criteria criteria = adminExample.createCriteria();
criteria.andEqualTo("username",username);
AdminUser admin = adminUserMapper.selectOneByExample(adminExample);
return admin;
}
模糊搜索
String name = "云";
Example adminExample = new Example(AdminUser.class);
adminExample.createCriteria().andNameLike('%'+name+'%');
List<AdminUser> userList = adminUserMapper.selectByExample(adminExample);
可扩展条件搜索
Example adminExample = new Example(AdminUser.class);
Example.Criteria criteria = adminExample.createCriteria();
if(StringUtils.isNotBlank(user.getAddress())){
criteria.andAddressEqualTo(user.getAddress());
}
if(StringUtils.isNotBlank(user.getName())){
criteria.andNameEqualTo(user.getName());
}
//可继续扩展条件
List<AdminUser> userList = adminUserMapper.selectByExample(adminExample);
通过字段排序
String order = "age DESC";
Example adminExample = new Example(AdminUser.class);
adminExample.setOrderByClause(order);
List<AdminUser> userList = adminUserMapper.selectByExample(adminExample);