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.andXxxGreaterThanOrEqual
To(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)
// 14.
添加xxx字段值不在之间
criteria
.andXxxNotBetween(value1,value2)
selectByExample
的代码如下:
Example
example
= new
Example
(Sku.class);
Example
.Criteria criteria =
example
.
createCriteria
();
criteria.andEqualTo("id",27359021549L);
List<Sku> list = this.skuMapper.
selectByExample
(
example
);
list.get(0)就是需要的对象
最近在用mybatis,有不想
写
SQL,于是研究了一下mybatis的
Example
之前
写
过一个jpa的,这个还挺类似的,可以自己拼接
查询
内容还挺方便的,下面简单介绍一下
用法
。需要
注意
的是,这里的面的字段属性,如果表中是 user_id 而 实体类里面是userId的话,需要按实体对象里面的为准,不然会报错的。我们要使用呢首先要先把
查询
对象创建出来。
这里用的 or 的方式
SpaItem
Example
.Criteria criteria =
example
.
createCriteria
();
criteria.andCodeLike('%'+queryString+'%');
example
.or(
example
.
createCriteria
().andNameLike('%'+queryString+
假设我们有员工数据 1 , A, AA 2 , B, BB
会议 1,AB 会议,X 2,另一个会议,X 3,仅 B
Employee_Meeting AB A 和 B 参加的会议 A 参加的另一个会议 B 只有 B 参加的会议
1, 1 2, 1 1, 2 2, 3
现在我们想要一个扁平化的名字列表,会议主题
标准标准 = session.
createCriteria
(Employee.class, "e"); 标准.setFetchMode("e.meetings", FetchMode.JOIN); 标准 = 标准.createAlias("e.meetings", "m", JoinType.LEFT_OUTER_JOIN); final ProjectionList 投影
Example
查询
翻译过来叫“按例
查询
(QBE)”。是一种用户界面友好的
查询
技术。 它允许动态创建
查询
,并且不需要编
写
包含字段名称的
查询
。 而且按示例
查询
不需要使用特定的数据库的
查询
语言来编
写
查询
语句。
官方文档有一个优劣势的说明:
可以使用动态或者静态的限制去
查询
在重构你的实体的时候,不用担心影响到已有的
查询
可以独立地工作在数据
查询
API之外
不支持组合
查询
,比如:fi...
@GetMapping(value = "/getCustomerByPage")
public BaseResult getCustomerByPage(@RequestParam("pageNum") Integer pageNum, @RequestPa
下面举例说明如何使用:
public List&lt;SysHospitalizationDTO&gt; getPageList(SysHospitalizationQuery sysHospitalizationQuery, String sort, String sortOrd...