MyBatis架構
一.原理:
mybatis是支援普通 SQL查詢,儲存過程和高階對映的優秀持久層的框架,mybatis讓程式將主要精力放在sql上,通過mybatis提供的對映方式,自由靈活生成(半自動化,大部分需要程式設計師編寫sql)滿足需要sql語句。
mybatis可以將向 preparedStatement中的輸入引數自動進行輸入對映,將查詢結果集靈活對映成java物件。(輸出對映)
將sql語句配置在xml配置檔案中,即使sql變化,不需要對java程式碼進行重新編譯。將sql語句及佔位符號和引數全部配置在xml中。
二.架構圖
3.具體實現
每個MyBatis應用程式主要都是使用SqlSessionFactory例項的,一個SqlSessionFactory例項可以通過SqlSessionFactoryBuilder獲得。SqlSessionFactoryBuilder可以從一個xml配置檔案或者一個預定義的配置類的例項獲得。
//獲得SqlSession
public SqlSession getSqlSession() throws IOException {
// mybastis配置檔案
String resource = "SqlMapConfig.xml";
// 得到配置檔案流
InputStream impuStream = Resources.getResourceAsStream(resource);
// 建立會話工廠
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder()
.build(impuStream);
// 通過工廠得到sqlSession
SqlSession sqlSession = sqlSessionFactory.openSession();
return sqlSession;
}
Resources可以方便地從類路徑及其它位置載入資源,使用類路徑資源(classpath resource),用xml檔案構建SqlSessionFactory例項。
四.總結:
熟悉了架構之後,所有的程式碼都是在架構的基礎上進行的簡單操作,更加容易理解
相關文章
- MyBatis(十一):MyBatis架構流程淺析MyBatis架構
- 『網際網路架構』軟體架構-mybatis體系結構(14)架構MyBatis
- MyBatis原始碼窺探(一):MyBatis整體架構解析MyBatis原始碼架構
- springmvc+mybatis +Jeesz 分散式架構SpringMVCMyBatis分散式架構
- MyBatis 基礎搭建及架構概述MyBatis架構
- springmvc + mybatis + ehcache + redis 分散式架構SpringMVCMyBatisRedis分散式架構
- 深入瞭解Mybatis架構設計MyBatis架構
- Mybatis原始碼分析(一)Mybatis的架構設計簡介MyBatis原始碼架構
- springmvc+mybatis+restful+webservice Jeesz分散式架構SpringMVCMyBatisRESTWeb分散式架構
- 精盡 MyBatis 原始碼分析 - 整體架構MyBatis原始碼架構
- 【Mybatis原始碼解析】- 整體架構及原理MyBatis原始碼架構
- spring cloud + spring boot + springmvc+mybatis微服務雲架構CloudSpring BootSpringMVCMyBatis微服務架構
- Spring Cloud Spring Boot mybatis分散式微服務雲架構CloudSpring BootMyBatis分散式微服務架構
- spring cloud springboot mybatis 分散式 微服務 架構原始碼CloudSpring BootMyBatis分散式微服務架構原始碼
- 【Spring Boot架構】整合Mybatis-Plus的例項詳解Spring Boot架構MyBatis
- 深入詳解Mybatis的架構原理與6大核心流程MyBatis架構
- 淺析MyBatis(一):由一個快速案例剖析MyBatis的整體架構與執行流程MyBatis架構
- spring cloud + spring boot + springmvc+mybatis分散式微服務雲架構CloudSpring BootSpringMVCMyBatis分散式微服務架構
- 架構之:serverless架構架構Server
- 【細品架構4/100】架構之架構切分架構
- SaaS架構:流程架構分析架構
- 單體架構&微服務架構&中臺服務架構架構微服務
- 架構師修煉之道(二)——架構?設計?架構師?架構
- Spring Cloud Spring Boot mybatis分散式微服務雲架構-hystrix引數詳解CloudSpring BootMyBatis分散式微服務架構
- Springboot+shiro+mybatis-plus+vue前後端分離專案設計架構Spring BootMyBatisVue後端架構
- 前端架構之小小node架構前端架構
- 單體架構到垂直架構架構
- 架構之:資料流架構架構
- 架構架構
- 架構演進之「微服務架構」架構微服務
- MySQL 高可用架構之 MMM 架構MySql架構
- 【架構分析】MESA (EGL/GLES)架構分析架構
- 架構之:軟體架構漫談架構
- 架構之:微服務架構漫談架構微服務
- 在 Wed 中應用 MyBatis(同時使用MVC架構模式,以及ThreadLocal 事務控制)MyBatisMVC架構模式thread
- 解決方案架構、系統架構和企業架構區別架構
- 架構C01: 什麼是架構?為什麼做架構?架構師需要做什麼?架構
- 架構師眼中的高併發架構架構
- Spring Cloud雲架構-Restful 基礎架構SpringCloud架構REST