傳統(tǒng)的XML分頁(yè)以及模糊查詢操作
傳統(tǒng)的XML方式只能使用limit以及offset進(jìn)行分頁(yè),通過(guò)判斷name和bindState是否為空,不為空則拼接條件。
List<SanitationCompanyStaff> getSanitationStaffInfo(@Param("name") String name,
@Param("bindState") String bindState,
@Param("current") Long current,
@Param("size") Long size);
<select id="getSanitationStaffInfo" resultType="com.yutu.garden.entity.SanitationCompanyStaff">
select * from sanitation_company_staff
where 0 = 0
<if test="name != null and name != ''">
and name like concat('%', #{name}, '%')
</if>
<if test="bindState != null and bindState != ''">
and bind_state like concat('%', #{bindState}, '%')
</if>
limit 5 offset 0
</select>
Mybatis Plus分頁(yè)以及模糊查詢操作
只需要在Service實(shí)現(xiàn)類(lèi)中直接調(diào)用Mybatis Plus的方法即可進(jìn)行操作。
/**
* 獲取環(huán)衛(wèi)工列表數(shù)據(jù)
* @param name:名字
* @param bindState:綁定狀態(tài)
* @param current:頁(yè)碼
* @param size:每頁(yè)大小
* @return
*/
@Override
public Page<SanitationCompanyStaff> getSanitationStaffInfo(String name,String bindState,Long current,Long size) {
LambdaQueryWrapper<SanitationCompanyStaff> wrapper = new LambdaQueryWrapper<>();
//如果前端傳的name不為空,則進(jìn)行l(wèi)ike模糊查詢
if (StringUtils.isNotEmpty(name)){
wrapper.like(SanitationCompanyStaff::getName,name);
}
//如果前端傳的bindState不為空,則進(jìn)行eq匹配
if (StringUtils.isNotEmpty(bindState)){
wrapper.eq(SanitationCompanyStaff::getBindState,bindState);
}
//通過(guò)current、size進(jìn)行分頁(yè)
Page<SanitationCompanyStaff> sanitationStaffInfoPage = new Page<>(current,size);
this.page(sanitationStaffInfoPage,wrapper);
return sanitationStaffInfoPage;
}
return Page<SanitationCompanyStaff>類(lèi)型可以得到數(shù)據(jù)的總數(shù),你也可以通過(guò).getRecords()方式獲取List集合
文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-658048.html
這樣子,我們就可以通過(guò)Mybatis Plus得到分頁(yè)數(shù)據(jù)了!文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-658048.html
到了這里,關(guān)于Mybatis Plus中使用LambdaQueryWrapper進(jìn)行分頁(yè)以及模糊查詢對(duì)比傳統(tǒng)XML方式進(jìn)行分頁(yè)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!