MyBatis-第一章
ORM(Object Relational Mapping) 設計模式,思想
物件關系映射,是一種資料持久化技術,它在物件模型和關系型資料庫之間建立起對應關系,并且提供了一種機制,通過JavaBean物件去操作資料庫表中的資料,
Object Relation Mapping
物件 關系 映射
Object: java的物件
Relation: 關系型資料庫
初始MyBatis 具體實作
是一個優秀的資料持久化框架,在物體類和SQL陳述句之間建立映射關系,是一種半自動化的ORM實作,其封裝性要低于Hibernate,性能優秀,并且小巧、簡單易學,現在應用也越來越廣泛,
MyBatis環境部署
1.去官網下載相關的jar和配置
2.添加jar包

3.添加組態檔 入口組態檔
3.1 總組態檔 mybatis-config.xml (類似jdbc.properties)
配置和連接資料庫的主要資訊;
指定mapper檔案
3.2 Mapper檔案(一個dao對應一個mapper檔案)
一個dao對應一個mapper檔案,對應一個表
寫操作資料庫的sql陳述句的
4. service層
5. 測驗類
一個插入例子
1. 創建一個示例表 BOOK 先使用teacher表
|
列名 |
型別 |
約束 |
備注 |
|
book_id |
number |
序列自增 |
主鍵 |
|
book_name |
varchar2(32) |
|
圖書名稱 |
|
book_auth |
varchar2(32) |
|
圖書作者 |
|
book_brief |
varchar2(32) |
|
圖書描述 |
|
book_create_date |
date |
默認時間 |
時間戳 |
2. 創建java專案
3. 導包ojdbc6.jar,mybatis-3.2.6.jar
4. 創建MVC檔案層結構

5. 創建物體類 Book.java
6. 配置主組態檔 mybatis-config.xml

7. 配置mapper檔案,主要寫SQL陳述句,插入,修改,洗掉

8. Test_Main測驗

select 示例1
teacher表,欄位和物體類名字一致
select 示例2
book表,欄位和物體類名字不一致,需要映射
resultType 回傳具體某個類
resultMap 回傳一個map集合
SqlSessionFactory
SqlSessionFactory是MyBatis的關鍵物件,它是個單個資料庫映射關系經過編譯后的記憶體鏡像.SqlSessionFactory物件的實體可以通過SqlSessionFactoryBuilder物件類獲得,而SqlSessionFactoryBuilder則可以從XML組態檔或一個預先定制的Configuration的實體構建出SqlSessionFactory的實體.每一個MyBatis的應用程式都以一個SqlSessionFactory物件的實體為核心.同時SqlSessionFactory也是執行緒安全的,SqlSessionFactory一旦被創建,應該在應用執行期間都存在.在應用運行期間不要重復創建多次,建議使用單例模式.SqlSessionFactory創建SqlSession的工廠,
整個MyBatis運行期間的核心工廠,大部分類都由它生產制造,
SqlSession
SqlSession是MyBatis的關鍵物件,是執行持久化操作的獨享,類似于JDBC中的Connection.它是應用程式與持久層之間執行互動操作的一個單執行緒物件,也是MyBatis執行持久化操作的關鍵物件.SqlSession物件完全包含以資料庫為背景的所有執行SQL操作的方法,它的底層封裝了JDBC連接,可以用SqlSession實體來直接執行被映射的SQL陳述句.每個執行緒都應該有它自己的SqlSession實體.SqlSession的實體不能被共享,同時SqlSession也是執行緒不安全的,絕對不能將SqlSeesion實體的參考放在一個類的靜態欄位甚至是實體欄位中.也絕不能將SqlSession實體的參考放在任何型別的管理范圍中,比如Servlet當中的HttpSession物件中.使用完SqlSeesion之后關閉Session很重要,應該確保使用finally塊來關閉它.
一次請求資料的連接,類似于JDBC中的Connection
執行順序1
1. 首先加載mybatis-config.xml總組態檔,根據development的引數配置連接資料庫;查詢mappers映射關系,找到mapper.xml組態檔
2. 執行mapper.xml檔案,該檔案記錄了運行SQL;準備id的名字等待被呼叫
3. TestMain 生成SqlSessionFactory工廠物件
4. 由工廠物件生成SqlSession,然后打開連接資料庫連接通道
5. 對應呼叫mapper.xml檔案中的id,執行mapper.xml中SQL陳述句
6. 關閉SqlSession
.dtd 檔案
http://mybatis.org/dtd/mybatis-3-mapper.dtd
檔案型別定義(Document Type Definition)是一套為了進行程式間的資料交換而建立的關于標記符的語法規則,
對應 window --> preferencrs --> xml --> xml catalog –> .xsd
命名空間
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/11280.html
標籤:Oracle
上一篇:oracle增量和全量備份方案
下一篇:MVC三層架構
