6g下載網
當前位置: 主頁 > 軟件教程 > 編程開發 >

mybatis是什么?mybatis基本原理介紹

時間: 2016-03-30 16:19 來源: 本站整理

分享到:

6G下載網給大家介紹mybatis基本原理,文章從mybatis介紹、框架原理、mybatis框架執行過程、mybatis開發dao的方法、輸入映射和輸出映射、動態sql分別介紹,希望能給大家提供幫助。

本文對mybatis做一個簡單介紹,包括框架原理,執行過程,開發方法,輸入輸出映射以及動態sql,我會在后續的系列文章中一一詳細說明

mybatis 介紹:

mybatis是一個持久層的框架,是apache下的頂級項目。

mybatis托管到goolecode下,再后來托管到github下(https://github.com/mybatis/mybatis-3/releases)。

mybatis讓程序將主要精力放在sql上,通過mybatis提供的映射方式,自由靈活生成(半自動化,大部分需要程序員編寫sql)滿足需要sql語句。

mybatis可以將向 preparedStatement中的輸入參數自動進行輸入映射,將查詢結果集靈活映射成java對象。(輸出映射)

框架原理:

mybatis框架

mybatis是什么?mybatis基本原理介紹

mybatis框架執行過程:

1、配置mybatis的配置文件,SqlMapConfig.xml(名稱不固定)

2、通過配置文件,加載mybatis運行環境,創建SqlSessionFactory會話工廠(SqlSessionFactory在實際使用時按單例方式)

3、通過SqlSessionFactory創建SqlSession。SqlSession是一個面向用戶接口(提供操作數據庫方法),實現對象是線程不安全的,建議sqlSession應用場合在方法體內。

4、調用sqlSession的方法去操作數據。如果需要提交事務,需要執行SqlSession的commit()方法。

5、釋放資源,關閉SqlSession

mybatis開發dao的方法:

1.原始dao 的方法

需要程序員編寫dao接口和實現類

需要在dao實現類中注入一個SqlSessionFactory工廠

2.mapper代理開發方法(建議使用)

只需要程序員編寫mapper接口(就是dao接口)。

程序員在編寫mapper.xml(映射文件)和mapper.java需要遵循一個開發規范:

mapper.xml中namespace就是mapper.java的類全路徑。

mapper.xml中statement的id和mapper.java中方法名一致。

mapper.xml中statement的parameterType指定輸入參數的類型和mapper.java的方法輸入參數類型一致

mapper.xml中statement的resultType指定輸出結果的類型和mapper.java的方法返回值類型一致。

SqlMapConfig.xml配置文件:可以配置properties屬性、別名、mapper加載。

輸入映射和輸出映射:

輸入映射:

parameterType:指定輸入參數類型可以簡單類型、pojo、hashmap。

對于綜合查詢,建議parameterType使用包裝的pojo,有利于系統 擴展。

輸出映射:

resultType:查詢到的列名和resultType指定的pojo的屬性名一致,才能映射成功。

reusltMap:可以通過resultMap 完成一些高級映射。如果查詢到的列名和映射的pojo的屬性名不一致時,通過resultMap設置列名和屬性名之間的對應關系(映射關系)。可以完成映射。

高級映射:

將關聯查詢的列映射到一個pojo屬性中。(一對一)

將關聯查詢的列映射到一個List中。(一對多)

動態sql:

動態sql:(重點)

if判斷(掌握)

where

foreach

sql片段(掌握)

(責任編輯:6g下載網)
標簽:mybatis

分享到:

------分隔線----------------------------
? 35选7福利彩票