pagehelper / Mybatis-PageHelper

Mybatis通用分页插件
https://mybatis.io
MIT License
12.18k stars 3.13k forks source link

添加注解避免不安全的分页 #787

Open sc-xy opened 9 months ago

sc-xy commented 9 months ago

功能建议

PageHelper.startPage(1, 10);
List<User> list;
if(param1 != null){
    list = userMapper.selectIf(param1);
} else {
    list = new ArrayList<User>();
}

不安全的分页是因为调用了静态方法,能否新增一个注解例如@StartPage使其定义在mapper的方法上

@StartPage
@Select("select * from user")
PageInfo<User> selectByStartPage(PageInfo pageinfo);

调用方法类似于

PageInfo<User> users;
if(param1 != null){
    users = userMapper.selectByStartPage(new PageInfo(@Param("pageNum") pageNum, @Param("pageSize") pageSize));
} else {
    users = new PageInfo<User>();
}
abel533 commented 9 months ago

支持方法参数查询,这种方式更安全,不需要加注解。