写在正文前面的一些话
最近公司任务比较紧(为自己懒没写博客找的理由还不错), 关于博客的更新停滞了一段时间.最近一直在”仔细揣摩”公司项目的各种历史存储过程,那个苦啊,看的整个人不行不行的,关键是还得把诸如此类的存储过程改成java代码,还得自己写各种测试用例,对于我这种刚进公司的业务小白来说,实在是有点那啥了…
言归正传,幸好我们组长看我做事比较认真,最近交给我一个”光荣使命”:给公司分页插件添加一个支持字段排序的小功能(其实就是动态给业务SQL加上order by的东西),还好幸不辱命,还得以一窥 MyBatis-paginator 插件的其他使用,特意总结下,分享给寥寥无几的数人…
MyBatis-paginator 简介
MyBatis-paginator 是github上的一个开源项目, 主要作用就是从java后台获取分页数据,并结合另外一个基于jQuery的表格控件:mmgrid用于展示后台分页数据.
开源项目地址为: https://github.com/miemiedev
使用插件
mybatis-config.xml 设置分页插件
<plugins>
<plugin interceptor="com.xxx.xxx.framework.mybatis.paginator.OffsetLimitInterceptor">
<!-- 这是一个自定义方言类,就是定制化SQL的java类 -->
<property name="dialectClass" value="com.xxx.xxx.framework.mybatis.paginator.dialect.SQLServer2005Dialect" />
</plugin>
</plugins>
Controller层
@Controller
@RequestMapping(value = "/acl/role")
public class RoleController {
/**
*
* @param queryDto 查询Dto
* @param page 当前页码
* @param limit 每页最大记录数
* @param sortStr 排序字段
* @return
*/
@RequestMapping(value = "/list", method = RequestMethod.GET)
public @ResponseBody
Page<Role> list(RoleQueryDto queryDto,
@RequestParam (value = "page", defaultValue = "1") Integer page,