第一步:創建一個分頁數據保存的基類BwfPagingBean。sql
省略了getter、setterapp
第二步:把User bean修改成繼承自BwfPagingBean。函數
第三步:添加mapper 分頁查詢語句。測試
第四步:添加分頁查詢接口方法。代理
第五步:實現攔截器。code
1. 新建BwfPagingInterceptor實現Interceptor接口對象
2. 給BwfPagingInterceptor添加註解繼承
@Intercepts({接口
@Signature(type = StatementHandler.class, method = "prepare", args = {Connection.class,Integer.class})get
})
含義:攔截StatementHandler類的prepare方法,其參數有兩個,分別是Connection.class,Integer.class。也就是在sql執行預編譯前,對sql進行分頁修改。
3. 重寫plugin方法
直接調用Plugin類的wrap對目標對象進行代理封裝。
4. 重寫intercept方法
在該方法中,對查詢的方法名進行了鑑別,只有包含ByPaging字樣的 函數纔會進行分頁攔截,不然直接經過,不進行分頁。
第5步和第6步兩個方法的定義以下:
第六步:在配置文件中添加攔截器配置
第七步:測試
測試結果略,你們能夠實際操做下。