mybatis的example

来源:互联网 发布:网络的宣传语 编辑:程序博客网 时间:2024/06/05 22:41

每个po类都有一个类,就是xxxExample.java,这个类是给用户自定义sql使用的,

主要是对各种不同的条件来操作数据库

example类与实体类对应,用作动态查询example类与实体类对应,用作动态查询

example类与实体类对应,用作动态查询

     Criterion

      Criterion是最基本,最底层的Where条件,用于字段级的筛选

      Criteria

      Criteria包含一个Cretiron的集合,每一个Criteria对象内包含的Cretiron之间是由AND连接的,是逻辑与的关系。

      oredCriteria

      Example内有一个成员叫oredCriteria,是Criteria的集合,就想其名字所预示的一样,这个集合中的Criteria是由OR连接的,是逻辑或关系。oredCriteria就是ORed Criteria。


Mybatis逆向工程会生成实例及实例对应的example(用于添加条件,相当于where后的部分)
xxxExample example = new xxxExample();
Criteria criteria = example.createCriteria();
方法说明:


// 1.添加升序排列条件,DESC为降序
example.setOrderByClause("字段名ASC")


// 2.去除重复,boolean类型,true为选择不重复的记录
example.setDistinct(false)


// 3.添加字段xxx为null的条件
criteria.andXxxIsNull


// 4.添加字段xxx不为null的条件
criteria.andXxxIsNotNull


// 5.添加xxx字段等于value条件
criteria.andXxxEqualTo(value)


// 6.添加xxx字段不等于value条件
criteria.andXxxNotEqualTo(value)


// 7.添加xxx字段大于value条件
criteria.andXxxGreaterThan(value)


// 8.添加xxx字段大于等于value条件
criteria.andXxxGreaterThanOrEqualTo(value)


// 9.添加xxx字段小于value条件
criteria.andXxxLessThan(value)


// 10.添加xxx字段小于等于value条件
criteria.andXxxLessThanOrEqualTo(value)


// 11.添加xxx字段值在List
criteria.andXxxIn(List)


// 12.不添加xxx字段值在List
criteria.andXxxNotIn(List)


// 13.添加xxx字段值在之间
criteria.andXxxBetween(value1,value2)



@Overridepublic boolean delCategory(Long id) {TbCategoryExample example = new TbCategoryExample();Criteria criteria = example.createCriteria();criteria.andIdEqualTo(id);return categoryMapper.deleteByExample(example) > 0 ? true : false;}


@TestpublicvoidtestFindUserByName(){

//通过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); }

原创粉丝点击