重學Mybatis從入門到原始碼之一
阿新 • • 發佈:2020-10-14
這一篇是Mybatis的介紹。
早在2014年實習就已經使用了Mybatis,畢業之後的第一個專案也是使用的Mybatis,中間幾年沒有使用。但是到現在2020年了,對Mybatis的瞭解也僅限於會用,所以趁現在意識到自己的不足,靜下來好好的重學一遍Mybatis,正好把這個小一點的框架當作我讀原始碼的第一步。
首先,什麼是Mybatis?
Mybatis是一個持久層(持久化:將程式的資料在持久狀態和瞬時狀態轉化的過程)的框架,經常聽說專案使用SSM,這裡面的M就是Mybatis。它支援定製化SQL、儲存過程以及高階對映。可以對配置和原生Map使用簡單的 XML 或註解,將介面和 Java 的 POJOs(Plain Old Java Objects,普通的 Java物件)對映成資料庫中的記錄。
Mybatis的優缺點?
優點:
- 簡單易學
- 靈活
- 解除sql與程式程式碼的耦合,sql和程式碼的分離,提高了可維護性。
- 提供對映標籤,支援物件與資料庫的orm欄位關係對映
- 提供物件關係對映標籤,支援物件關係組建維護
- 提供xml標籤,支援編寫動態sql。
缺點:
- 編寫SQL語句時工作量很大,尤其是欄位多、關聯表多時,更是如此。
- SQL語句依賴於資料庫,導致資料庫移植性差,不能更換資料庫。
- 二級快取機制不佳
怎麼安裝Mybatis?
如果是maven專案,只需要再pom檔案中引入Mybatis的配置檔案
https://mvnrepository.com/artifact/org.mybatis/mybatis/3.5.6
<dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.5.6</version> </dependency>
不是maven專案,也是簡單的將jar包放入classpath中。