Mybatis架構(gòu)筆記來了,你還學(xué)不廢嗎???
一、三層架構(gòu)
界面層: 和用戶打交道的, 接收用戶的請(qǐng)求參數(shù), 顯示處理結(jié)果的。(jsp ,html ,servlet)
業(yè)務(wù)邏輯層: 接收了界面層傳遞的數(shù)據(jù),計(jì)算邏輯,調(diào)用數(shù)據(jù)庫(kù),獲取數(shù)據(jù)
數(shù)據(jù)訪問層: 就是訪問數(shù)據(jù)庫(kù), 執(zhí)行對(duì)數(shù)據(jù)的查詢,修改,刪除等等的。
三層對(duì)應(yīng)的包
界面層: controller包 (servlet)
業(yè)務(wù)邏輯層: service 包(XXXService類)
數(shù)據(jù)訪問層: dao包(XXXDao類)
三層中類的交互
用戶使用界面層--> 業(yè)務(wù)邏輯層--->數(shù)據(jù)訪問層(持久層)-->數(shù)據(jù)庫(kù)(mysql)
三層對(duì)應(yīng)的處理框架
界面層---servlet---springmvc(框架)
業(yè)務(wù)邏輯層---service類--spring(框架)
數(shù)據(jù)訪問層---dao類--mybatis(框架)
二、框架
框架是一個(gè)舞臺(tái), 一個(gè)模版
模版:
1. 規(guī)定了好一些條款,內(nèi)容。
2. 加入自己的東西
框架是一個(gè)模塊:
1.框架中定義好了一些功能。這些功能是可用的。
2.可以加入項(xiàng)目中自己的功能, 這些功能可以利用框架中寫好的功能。
框架是一個(gè)軟件,半成品的軟件,定義好了一些基礎(chǔ)功能, 需要加入你的功能就是完整的;A(chǔ)功能是可重復(fù)使用的,可升級(jí)的。
框架特點(diǎn):
1. 框架一般不是全能的, 不能做所有事情
2. 框架是針對(duì)某一個(gè)領(lǐng)域有效。 特長(zhǎng)在某一個(gè)方面,比如mybatis做數(shù)據(jù)庫(kù)操作強(qiáng),但是他不能做其它的。
3. 框架是一個(gè)軟件
三、mybatis框架
一個(gè)框架,早期叫做ibatis, 代碼在github。
mybatis是 MyBatis SQL Mapper Framework for Java (sql映射框架)
1)sql mapper :sql映射
可以把數(shù)據(jù)庫(kù)表中的一行數(shù)據(jù) 映射為 一個(gè)java對(duì)象。
一行數(shù)據(jù)可以看做是一個(gè)java對(duì)象。操作這個(gè)對(duì)象,就相當(dāng)于操作表中的數(shù)據(jù)
2) Data Access Objects(DAOs) : 數(shù)據(jù)訪問 , 對(duì)數(shù)據(jù)庫(kù)執(zhí)行增刪改查。
mybatis提供了哪些功能:
1. 提供了創(chuàng)建Connection ,Statement, ResultSet的能力 ,不用開發(fā)人員創(chuàng)建這些對(duì)象了
2. 提供了執(zhí)行sql語(yǔ)句的能力, 不用你執(zhí)行sql
3. 提供了循環(huán)sql, 把sql的結(jié)果轉(zhuǎn)為java對(duì)象, List集合的能力
4.提供了關(guān)閉資源的能力,不用你關(guān)閉Connection, Statement, ResultSet
開發(fā)人員做的是: 提供sql語(yǔ)句
最后是: 開發(fā)人員提供sql語(yǔ)句--mybatis處理sql---開發(fā)人員得到List集合或java對(duì)象(表中的數(shù)據(jù))
總結(jié):
mybatis是一個(gè)sql映射框架,提供的數(shù)據(jù)庫(kù)的操作能力。增強(qiáng)的JDBC,使用mybatis讓開發(fā)人員集中精神寫sql就可以了,不必關(guān)心Connection,Statement,ResultSet的創(chuàng)建,銷毀,sql的執(zhí)行。

發(fā)表評(píng)論
請(qǐng)輸入評(píng)論內(nèi)容...
請(qǐng)輸入評(píng)論/評(píng)論長(zhǎng)度6~500個(gè)字
最新活動(dòng)更多
-
7月8日立即報(bào)名>> 【在線會(huì)議】英飛凌新一代智能照明方案賦能綠色建筑與工業(yè)互聯(lián)
-
7月22-29日立即報(bào)名>> 【線下論壇】第三屆安富利汽車生態(tài)圈峰會(huì)
-
7.30-8.1火熱報(bào)名中>> 全數(shù)會(huì)2025(第六屆)機(jī)器人及智能工廠展
-
7月31日免費(fèi)預(yù)約>> OFweek 2025具身智能機(jī)器人產(chǎn)業(yè)技術(shù)創(chuàng)新應(yīng)用論壇
-
免費(fèi)參會(huì)立即報(bào)名>> 7月30日- 8月1日 2025全數(shù)會(huì)工業(yè)芯片與傳感儀表展
-
即日-2025.8.1立即下載>> 《2024智能制造產(chǎn)業(yè)高端化、智能化、綠色化發(fā)展藍(lán)皮書》
推薦專題
- 1 AI 眼鏡讓百萬(wàn) APP「集體失業(yè)」?
- 2 豆包前負(fù)責(zé)人喬木出軌BP后續(xù):均被辭退
- 3 一文看懂視覺語(yǔ)言動(dòng)作模型(VLA)及其應(yīng)用
- 4 “支付+”時(shí)代,支付即生態(tài) | 2025中國(guó)跨境支付十大趨勢(shì)
- 5 中國(guó)最具實(shí)力AI公司TOP10
- 6 深圳跑出40億超級(jí)隱形冠軍:賣機(jī)器人年入6.1億,港股上市
- 7 特斯拉Robotaxi上路,馬斯克端上畫了十年的餅
- 8 “AI六小虎”到了下一個(gè)賽點(diǎn)
- 9 張勇等人退出阿里合伙人
- 10 AI的夏天:第四范式VS云從科技VS地平線機(jī)器人