MyBatis從前世到今生一網打盡(全網最全,建議收藏)5??
八、Mybatis 逆向工程
8.1、逆向工程簡介
Mybatis Generator: 簡稱 MBG,是一個專門為 MyBatis 框架使用者定制的代碼生成器,可以快速的根據表生成對應的映射文件,接口,以及 bean 類。支持基本的增刪改查,以及 QBC 風格的條件查詢。但是表連接、存儲過程等這些復雜 sql 的定義需要我們手工編寫
官方文檔地址
http://www.mybatis.org/generator/
官方工程地址
https://github.com/mybatis/generator/releases
8.2、逆向工程的配置
導入逆向工程的 jar 包:mybatis-generator-core-1.3.2.jar
編寫 MBG 的配置文件(重要幾處配置),可參考官方手冊
編寫java代碼運行
@Test public void testMBG() throws Exception { List
8.3、逆向工程的使用
基本查詢的測試
@Test public void testSelect() throws Exception { SqlSessionFactory ssf = getSqlSessionFactory(); SqlSession session = ssf.openSession(); try { EmployeeMapper mapper = session.getMapper(EmployeeMapper.class); List
帶條件查詢的測試
@Test public void testSelect() throws Exception { SqlSessionFactory ssf = getSqlSessionFactory(); SqlSession session = ssf.openSession(); try { EmployeeMapper mapper = session.getMapper(EmployeeMapper.class); //條件查詢: 名字中帶有'張' 并且 email中'j' 或者 did = 2 EmployeeExample example = new EmployeeExample(); Criteria criteria = example.createCriteria(); criteria.andLastNameLike("%張%"); criteria.andEmailLike("%j%"); //or Criteria criteriaOr = example.createCriteria(); criteriaOr.andDIdEqualTo(2); example.or(criteriaOr); List
#九、擴展-PageHelper 分頁插件
9.1、PageHelper 分頁插件簡介
PageHelper 是 MyBatis 中非常方便的第三方分頁插件,官方文檔:https://github.com/pagehelper/Mybatis-PageHelper/blob/master/README_zh.md
9.2、PageHelper 的使用步驟
導入相關包 pagehelper-x.x.x.jar 和 jsqlparser-0.9.5.jar
在 MyBatis 全局配置文件中配置分頁插件
使用 PageHelper 提供的方法進行分頁
可以使用更強大的 PageInfo 封裝返回結果
9.3、Page 對象的使用
在查詢之前通過 PageHelper.startPage(頁碼,條數)設置分頁信息,該方法返回 Page 對象
@Test public void testPageHelper() throws Exception{ SqlSessionFactory ssf = getSqlSessionFactory(); SqlSession session = ssf.openSession(); try { EmployeeMapper mapper = session.getMapper(EmployeeMapper.class); //設置分頁信息 Page
9.4、PageInfo 對象的使用
在查詢完數據后,使用 PageInfo 對象封裝查詢結果,可以獲取更詳細的分頁信息以及可以完成分頁邏輯
@Test public void testPageHelper1() throws Exception{ SqlSessionFactory ssf = getSqlSessionFactory(); SqlSession session = ssf.openSession(); try { EmployeeMapper mapper = session.getMapper(EmployeeMapper.class); //設置分頁信息 Page
十、SSM 框架整合
10.1、整合注意事項
查看不同 MyBatis 版本整合 Spring 時使用的適配包;
下載整合適配包:https://github.com/mybatis/spring/releases
官方整合示例,jpetstore:https://github.com/mybatis/jpetstore-6
10.2、整合思路、步驟
搭建環境
創建一個動態的 WEB 工程,導入 SSM 需要使用的 jar 包,導入整合適配包,導入其他技術的一些支持包 連接池 數據庫驅動 日志…
Spring + Springmvc
在web.xml 中配置: Springmvc 的前端控制器 實例化Spring 容器的- ,字符編碼過濾器 REST 過濾器
創建 Spring 的配置文件: applicationContext.xml:組件掃描、 連接池、 事務…
創建 Springmvc 的配置文件: springmvc.xml : 組件掃描、 視圖解析器
MyBatis
創建 MyBatis 的全局配置文件
編寫實體類 Mapper 接口 Mapper 映射文件
Spring + MyBatis
MyBatis 的 SqlSession 的創建 .
MyBatis 的 Mapper 接口的代理實現類
測試
10.3、整合的配置
10.3.1、web.xml
10.3.2、Spring 配置
10.3.3 SpringMVC 配置
10.3.4、MyBatis 配置
全局文件的配置
SQL 映射文件配置
Spring 整合 MyBatis 配置
測試
MyBatis Spring
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。