Java神鬼莫测之MyBatis实现分页全过程(三)

//将查询设定为全模糊查询

PageHelper.startPage(pager.getPageNum(), pager.getPageSize(), pager.get());

List userDtoList = userService.findAll(user, search);

PageResponse pageResponse = new PageResponse<>(userDtoList, pager);

return Response.success(pageResponse);

}

2.Service

List findAll(User user, Search search);

3.ServiceImpl

@Override

public List findAll(User user, Search search) {

return userDao.findAll(user,search);

}

4.Dao

List findAll(@Param(“user”) User user, @Param(“search”) Search search);

5.Mapper

select

from user

where 1=1

and id = #{user.id}

and user_code = #{user.userCode}

and user_name = #{user.userName}

and password = #{user.password}

and type_code = #{user.typeCode}

and group_code = #{user.groupCode}

and address = #{user.address}

and mobile = #{user.mobile}

and phone_num = #{user.phoneNum}

and e_mail = #{user.eMail}

and role_id = #{user.roleId}

and user_lock = #{user.userLock}

and is_del != 2

分页使用到工具类


必看视频!获取2024年最新Java开发全套学习资料 备注Java


1.Pager

public class Pager {

/**

  • 升序

*/

public static final String SORT_ASC = “asc”;

/**

  • 降序

*/

public static final String SORT_DESC = “desc”;

/**

  • 存储排序的集合

*/

private List sortInfo = new ArrayList<>();

/**

  • url地址

*/

private String pageUrl;

/**

  • 当前页

*/

private Integer pageNum = 1;

/**

  • 每页分页数

*/

private Integer pageSize = 20;

/**

  • 添加排序信息

  • @author fengzx

  • @date 2020/3/26 19:55

*/

public Pager add(IGetter fn, String sort) {

//属性名

String propertyName = BeanUtils.convertToFieldName(fn);

String columnName = BeanUtils.HumpToUnderline(propertyName);

sortInfo.add(columnName + " " + sort);

return this;

}

/**

  • 获取排序信息

  • @author fengzx

  • @date 2020/3/26 19:54

*/

public String get() {

return StringUtils.join(sortInfo.toArray(), “,”);

}

public String getPageUrl() {

return pageUrl;

}

public void setPageUrl(String pageUrl) {

this.pageUrl = pageUrl;

}

public Integer getPageNum() {

return pageNum;

}

public void setPageNum(Integer pageNum) {

this.pageNum = pageNum;

}

public Integer getPageSize() {

return pageSize;

}

public void setPageSize(Integer pageSize) {

this.pageSize = pageSize;

}

}

2.来自com.github.pagehelper.PageHelper的PageHelper类

3.返回结果类

public class PageResponse extends PageInfo {

/**

  • ajax请求地址

*/

private String pageUrl;

public PageResponse(List list, Pager pager) {

super(list);

this.pageUrl = pager.getPageUrl();

}

public String getPageUrl() {

return pageUrl;

}

public void setPageUrl(String pageUrl) {

this.pageUrl = pageUrl;

}

}

返回结果


{

“type”: “success”,

“data”: {

“navigatepageNums”: [

1

],

“startRow”: 1,

最后

由于篇幅有限,这里就不一一罗列了,20道常见面试题(含答案)+21条MySQL性能调优经验小编已整理成Word文档或PDF文档

MySQL全家桶笔记

还有更多面试复习笔记分享如下

Java架构专题面试复习

s.pageUrl = pageUrl;

}

}

返回结果


{

“type”: “success”,

“data”: {

“navigatepageNums”: [

1

],

“startRow”: 1,

最后

由于篇幅有限,这里就不一一罗列了,20道常见面试题(含答案)+21条MySQL性能调优经验小编已整理成Word文档或PDF文档

[外链图片转存中…(img-Sf9wuJj4-1716463684074)]

还有更多面试复习笔记分享如下

[外链图片转存中…(img-5d79Ctvl-1716463684075)]

  • 30
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值