Mybatis自带的selectByExample修改查询条件
程序员文章站
2024-03-02 08:05:58
...
在使用selectByExample时,可以设置查询条件的
1、相等
2、模糊查询
3、时间在某个时间段内
下面举例说明如何使用:
public List<SysHospitalizationDTO> getPageList(SysHospitalizationQuery sysHospitalizationQuery, String sort, String sortOrder) {
SimpleDateFormat simpleDateFormat = new SimpleDateFormat(getDateFormat());
Date todayDate = getTodayDate();
List<SysHospitalization> list = sysHospitalizationDao.selectByExample(getExample(sysHospitalizationQuery)).stream().collect(Collectors.toList());
}
private Example getExample(SysHospitalizationQuery sysHospitalizationQuery) {
Example example = new Example(SysHospitalization.class);
Example.Criteria criteria = example.createCriteria();
//模糊查询
if (sysHospitalizationQuery.getpName() != "") {
criteria.andLike("pName", "%" + sysHospitalizationQuery.getpName() + "%");
}
//相等查询
if (sysHospitalizationQuery.gethId() != "") {
criteria.andEqualTo("hId", sysHospitalizationQuery.gethId());
}
if (sysHospitalizationQuery.gethArea() != 0) {
criteria.andEqualTo("hArea", sysHospitalizationQuery.gethArea());
;
}
//筛选时间--在某个时间段内
if (sysHospitalizationQuery.gethDate() != "") {
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
Date dateBegin = null;
Date dateEnd=null;
try {
dateBegin = sdf.parse(sysHospitalizationQuery.gethDate());
dateEnd = sdf.parse(sysHospitalizationQuery.gethDate());
} catch (ParseException e) {
e.printStackTrace();
}
Calendar cal = Calendar.getInstance();
cal.setTime(dateEnd);
cal.add(Calendar.DATE, 1);
criteria.andBetween("hDate",dateBegin,new Date());
}
return example;
}
上一篇: [mybatis]Example的用法
下一篇: 关于DOM element with id in Element cache is not the same as element in the Dom解决方法
推荐阅读
-
Mybatis自带的selectByExample修改查询条件
-
MyBatis基于注解实现复杂的多条件SQL语句查询
-
使用mybatis example 和 java 8的特性来实现多表关联且带有查询条件的查询
-
Mybatis中的Criteria条件查询
-
利用MyBatis进行不同条件的like模糊查询的方法
-
利用MyBatis进行不同条件的like模糊查询的方法
-
success和error方法跳转到带查询条件的列表页修改
-
success和error方法跳转到带查询条件的列表页修改
-
Mybatis Criteria使用and和or进行联合条件查询的操作方法
-
在mybatis和PostgreSQL Json字段作为查询条件的解决方案