MyBatis(4):使用limit實現分頁
阿新 • • 發佈:2020-07-17
用limit實現分頁,首先要建立一個Maven專案,搭建好mybatis的實驗環境,並且連線好資料庫
程式碼
1,編寫dao介面
UserMapper
//查詢全部使用者實現分頁
List<User> selectUser(Map<String,Integer> map);
2,編寫對應Mapper對映檔案的方法
startIndex:起始位置
startIndex=(currentPage-1)*pageSize
pageSize:頁面大小
currentPage:當前頁
<select id="selectUserByLimit" parameterType="Map" resultType="User">
select * from user limit #{startIndex},#{pageSize}
</select>
3,測試
模擬分頁資料:currentPage,pageSize
@Test
public void selectUser(){
<span class="hljs-comment">//建立sqlSession</span>
SqlSessionFactory sqlSessionFactory = MyBatisUtils.getSqlSessionFactory();
SqlSession sqlSession = sqlSessionFactory.openSession();
<span class="hljs-comment">//準備資料</span>
<span class="hljs-keyword">int</span> currentPage = <span class="hljs-number">1</span>;<span class="hljs-comment">//當前是第幾頁</span>
<span class="hljs-keyword">int</span> pageSize = <span class="hljs-number">2</span>; <span class="hljs-comment">//頁面大小</span>
Map<String, Integer> <span class="hljs-built_in">map</span> = <span class="hljs-keyword">new</span> HashMap<String, Integer>();
<span class="hljs-built_in">map</span>.put(<span class="hljs-string">"startIndex"</span>,(currentPage<span class="hljs-number">-1</span>)*pageSize);
<span class="hljs-built_in">map</span>.put(<span class="hljs-string">"pageSize"</span>,pageSize);
<span class="hljs-comment">//測試</span>
UserDao mapper = sqlSession.getMapper(UserMapper.class);
List<User> users = mapper.selectUserByLimit(<span class="hljs-built_in">map</span>);
<span class="hljs-keyword">for</span> (User user : users) {
System.out.println(user);
}
sqlSession.close();<span class="hljs-comment">//關閉連線</span>
}
注意優化別名問題
可以為一個包的所有類指定別名,這個別名為類名
com.kuang.pojo.User - > User
寫在你的mybatis配置檔案下
<!--優化別名-->
<typeAliases>
<package name="com.Shandx.pojo"/>
</typeAliases>