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

請輸入評論內(nèi)容...
請輸入評論/評論長度6~500個字
最新活動更多
-
7月8日立即報名>> 【在線會議】英飛凌新一代智能照明方案賦能綠色建筑與工業(yè)互聯(lián)
-
7月22-29日立即報名>> 【線下論壇】第三屆安富利汽車生態(tài)圈峰會
-
7.30-8.1火熱報名中>> 全數(shù)會2025(第六屆)機器人及智能工廠展
-
7月31日免費預(yù)約>> OFweek 2025具身智能機器人產(chǎn)業(yè)技術(shù)創(chuàng)新應(yīng)用論壇
-
免費參會立即報名>> 7月30日- 8月1日 2025全數(shù)會工業(yè)芯片與傳感儀表展
-
即日-2025.8.1立即下載>> 《2024智能制造產(chǎn)業(yè)高端化、智能化、綠色化發(fā)展藍皮書》
推薦專題