自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

MyBatis:MyBatis架構(gòu)原理

開發(fā) 架構(gòu)
提供給外部使用的接口API,開發(fā)?員通過這些本地API來操縱數(shù)據(jù)庫。接口層?接收到調(diào)?請求就會調(diào)?數(shù)據(jù)處理層來完成具體的數(shù)據(jù)處理。

一、架構(gòu)設(shè)計

我們把Mybatis的功能架構(gòu)分為三層:

1、API接口層:提供給外部使用的接口API,開發(fā)?員通過這些本地API來操縱數(shù)據(jù)庫。接口層?接收到調(diào)?請求就會調(diào)?數(shù)據(jù)處理層來完成具體的數(shù)據(jù)處理。

MyBatis和數(shù)據(jù)庫的交互有兩種?式:

a.使用傳統(tǒng)的MyBatis提供的API;

b.使?Mapper代理的?式

2、數(shù)據(jù)處理層:負責具體的SQL查找、SQL解析、SQL執(zhí)?和執(zhí)?結(jié)果映射處理等。它主要的目的是根據(jù)調(diào)用的請求完成?次數(shù)據(jù)庫操作。

3、基礎(chǔ)支撐層:負責最基礎(chǔ)的功能支撐,包括連接管理、事務(wù)管理、配置加載和緩存處理,這些都是共用的東?,將他們抽取出來作為最基礎(chǔ)的組件。為上層的數(shù)據(jù)處理層提供最基礎(chǔ)的支撐。

二、主要構(gòu)建及其相互關(guān)系

三、總體流程

1、加載配置并初始化

觸發(fā)條件:加載配置?件

配置來源于兩個地?,?個是配置?件(主配置?件conf.xml,mapper?件*.xml),—個是java代碼中的注解,將主配置?件內(nèi)容解析封裝到Configuration,將sql的配置信息加載成為?個mappedstatement對象,存儲在內(nèi)存之中。

2、接收調(diào)用請求

觸發(fā)條件:調(diào)用Mybatis提供的API

傳?參數(shù):為SQL的ID和傳?參數(shù)對象

處理過程:將請求傳遞給下層的請求處理層進行處理。

3、處理操作請求

觸發(fā)條件:API接?層傳遞請求過來

傳?參數(shù):為SQL的ID和傳?參數(shù)對象

處理過程:

(A)根據(jù)SQL的ID查找對應的MappedStatement對象。

(B)根據(jù)傳?參數(shù)對象解析MappedStatement對象,得到最終要執(zhí)?的SQL和執(zhí)行傳?參數(shù)。

(C)獲取數(shù)據(jù)庫連接,根據(jù)得到的最終SQL語句和執(zhí)?傳?參數(shù)到數(shù)據(jù)庫執(zhí)?,并得到執(zhí)?結(jié)果。

(D)根據(jù)MappedStatement對象中的結(jié)果映射配置對得到的執(zhí)?結(jié)果進行轉(zhuǎn)換處理,并得到最終的處理結(jié)果。

(E)釋放連接資源。

4、返回處理結(jié)果

將最終的處理結(jié)果返回。

責任編輯:武曉燕 來源: 今日頭條
相關(guān)推薦

2021-08-09 11:15:28

MybatisJavaSpring

2020-12-18 08:03:00

插件MyBatis Executor

2022-11-15 08:10:23

SpringMyBatis底層

2022-02-07 07:48:17

MyBatisJavaORM

2024-12-04 15:55:19

2019-11-25 16:05:20

MybatisPageHelpeJava

2020-11-09 10:16:41

Mybatis

2024-12-20 16:49:15

MyBatis開發(fā)代碼

2020-12-17 08:02:42

MyBatis插件框架

2025-01-07 09:07:36

接口屬性路徑

2019-07-29 11:00:56

MyBatis緩存SQL

2015-08-26 16:38:37

mybatissql

2024-04-19 08:23:06

2023-04-27 08:18:10

MyBatis緩存存儲

2021-11-10 11:37:48

Spring整合 Mybatis

2022-10-20 18:00:00

MyBatis緩存類型

2023-07-29 22:02:06

MyBatis數(shù)據(jù)庫配置

2020-08-04 17:42:28

MyBatis版本升級

2021-06-05 07:34:00

SpringBootMybatis用法

2021-11-05 11:10:13

MyBatisSQL查詢
點贊
收藏

51CTO技術(shù)棧公眾號