# Mybatis簡介 ###### tags: `Mybatis-基礎` ## 什麼是Mybatis * MyBatis 是一款優秀的**持久層框架** * 它支持自定義 SQL、存儲過程以及高級映射。 * MyBatis 免除了幾乎所有的 JDBC 代碼以及設置參數和獲取結果集的工作。 * MyBatis 可以通過簡單的 XML 或注解來配置和映射原始類型、接口和 Java POJO(Plain Old Java Objects,普通老式 Java 對象)為數據庫中的記錄。 ## 如何獲得Mybatis? * [maven倉庫](https://mvnrepository.com/artifact/org.mybatis/mybatis) ```xml= <!-- https://mvnrepository.com/artifact/org.mybatis/mybatis --> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.5.10</version> </dependency> ``` * [github](https://github.com/mybatis/mybatis-3/tags) * [中文文檔](https://github.com/search?q=Mybatis) ## 持久化 數據持久化 * **持久化就是將程序的數據在持久化狀態和瞬時狀態轉化的過程** * 內存:斷電即失 * 數據庫(jdbc)、io文件持久化 * 生活:冷藏、罐頭 ### 為什麼需要持久化? * 有一些對象,不能讓他丟掉。 * 內存太貴了 ## 持久層 Dao層、Service層、Controller層... * 完成持久化工作的代碼塊 * 層是界限十分明顯的 ## 為什麼需要Mybatis? * 幫助程序員將數據存入到數據庫中 * 方便 * 傳統的JDBC代碼太複雜了。為了簡化,因此出現框架 * 不用Mybatis也可以。學習可以更容易上手。**技術沒有高低之分,只有使用者有高低之分** * 優點: 1. 簡單易學:本身就很小且簡單。沒有任何第三方依賴,最簡單安裝只要兩個jar文件+配置幾個sql映射文件。易於學習,易於使用。通過文檔和源代碼,可以比較完全的掌握它的設計思路和實現。 2. 靈活:mybatis不會對應用程序或者數據庫的現有設計強加任何影響。 sql寫在xml裏,便於統一管理和優化。通過sql語句可以滿足操作數據庫的所有需求。 3. 解除sql與程序代碼的耦合:通過提供DAO層,將業務邏輯和數據訪問邏輯分離,使系統的設計更清晰,更易維護,更易單元測試。sql和代碼的分離,提高了可維護性。 4. 提供映射標籤,支持對象與數據庫的orm字段關係映射。 5. 提供對象關係映射標籤,支持對象關係組建維護。 6. 提供xml標籤,支持編寫動態sql。 **最重要的一點:使用者多**
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up