-
ORACLE 模糊查询
LIKE '%'||#{pojo.remarks}||'%'
-
MYSQL 模糊查询
Controller
@ApiOperation(value = "分页查询,支持orderby DESC/ASC")
@PostMapping(value = "/bookmark/findPage")
public ResponseBodyVo findPage(@RequestBody BookMark bookMark) throws IOException {
ResponseBodyVo result = null;
PageInfo<BookMark> bookMarkList = new PageInfo<>(bookMarkService.findPage(bookMark));
if (bookMarkList != null && bookMarkList.getTotal() > 0) {
result = new ResponseBodyVo(ResponseStatus.OK.getStatus(), "成功", bookMarkList);
} else {
result = new ResponseBodyVo(ResponseStatus.BAD_REQUEST.getStatus(), "失败", null);
}
return result;
}
Service
import com.github.pagehelper.PageHelper;
public List<BookMark> findPage(BookMark pojo) {
// 分页信息
PageHelper.startPage(pojo.getQueryPage(), pojo.getQuerySize());
return bookMarkDao.findPage(pojo);
}
Xml
<select id="findPage" parameterType="com.gisquest.zrzy.analysis.domain.analysis.BookMark" resultMap="AllColumnMap">
SELECT
<include refid="all_column"/>
FROM TABLENAME
<where>
<if test="pojo.id != null and pojo.id != ''">`id` = #{pojo.id}</if>
<if test="pojo.analysisId != null"> `analysisId` = #{pojo.analysisId}, </if>
<if test="pojo.name != null and pojo.name != ''">AND `name` LIKE CONCAT('%',#{pojo.name,jdbcType=VARCHAR}, '%')</if>
<if test="pojo.type != null and pojo.type != ''">AND `type` LIKE CONCAT('%',#{pojo.type,jdbcType=VARCHAR}, '%')</if>
<if test="pojo.views != null and pojo.views != ''">AND `views` = #{pojo.views}</if>
<if test="pojo.creator != null and pojo.creator != ''">AND `creator` = #{pojo.creator}</if>
<if test="pojo.creatorName != null and pojo.creatorName != ''">AND `creator_name` LIKE CONCAT('%',#{pojo.creatorName,jdbcType=VARCHAR}, '%')
</if>
<if test="pojo.configJson !=null and pojo.configJson != ''">AND `config_json` = #{pojo.configJson}</if>
<if test="pojo.remarks != null and pojo.remarks != ''">AND `remarks` LIKE CONCAT('%',#{pojo.remarks,jdbcType=VARCHAR}, '%')</if>
</where>
<choose>
<when test="pojo.orderBy != null and pojo.orderBy !=''">
order by ${pojo.orderBy}
</when>
</choose>
</select>