您的位置:首页 > 其它

mybatis逆向工程生成的Example类的使用

2017-07-24 15:56 417 查看
一.逆向工程

逆向工程可以针对单表自动生成mybatis执行所需要的代码(mapper.java,mapper.xml、po),根据数据库的表生成java代码(逆向工程代码示例:https://github.com/tongyiming/mybatis)

二.Example类的使用

Example类的成员:

//升序还是降序:字段+空格+asc(desc)
protected String orderByClause;
//去除重复:true是选择不重复记录,false,反之
protected boolean distinct;
//自定义查询条件
protected List<Criteria> oredCriteria;


需求:根据用户名查询查询user

sql:select id, username, birthday, sex, address from user WHERE ( username = ‘张三’ ) order by username asc

@Test
public void testFindUserByName(){

//通过criteria构造查询条件
UserExample userExample = new UserExample();
userExample.setOrderByClause("username asc"); //asc升序,desc降序排列
userExample.setDistinct(false); //去除重复,true是选择不重复记录,false反之
UserExample.Criteria criteria = userExample.createCriteria(); //构造自定义查询条件
criteria.andUsernameEqualTo("张三");

//自定义查询条件可能返回多条记录,使用List接收
List<User> users = userMapper.selectByExample(userExample);

System.out.println(users);
}


测试结果(数据库中有两个username为张三):

DEBUG [main] - ==> Preparing: select id, username, birthday, sex, address from user WHERE ( username = ? ) order by username asc

DEBUG [main] - ==> Parameters: 张三(String)

DEBUG [main] - <== Total: 2

DEBUG [main] - Closing non transactional SqlSession [org.apache.ibatis.session.defaults.DefaultSqlSession@17db9ab7]

DEBUG [main] - Returning JDBC Connection to DataSource

[cn.itcast.ssm.po.User@567bed7a, cn.itcast.ssm.po.User@622410f1]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: