訂閱
糾錯(cuò)
加入自媒體

Mybatis架構(gòu)筆記來了,你還學(xué)不廢嗎???

一、三層架構(gòu)

界面層: 和用戶打交道的, 接收用戶的請求參數(shù), 顯示處理結(jié)果的。(jsp ,html ,servlet)

業(yè)務(wù)邏輯層: 接收了界面層傳遞的數(shù)據(jù),計(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(框架)

二、框架

框架是一個(gè)舞臺, 一個(gè)模版

模版:

1. 規(guī)定了好一些條款,內(nèi)容。

 2. 加入自己的東西

框架是一個(gè)模塊:

 1.框架中定義好了一些功能。這些功能是可用的。

 2.可以加入項(xiàng)目中自己的功能, 這些功能可以利用框架中寫好的功能。

框架是一個(gè)軟件,半成品的軟件,定義好了一些基礎(chǔ)功能, 需要加入你的功能就是完整的。基礎(chǔ)功能是可重復(fù)使用的,可升級的。

框架特點(diǎn):

 1. 框架一般不是全能的, 不能做所有事情

 2. 框架是針對某一個(gè)領(lǐng)域有效。 特長在某一個(gè)方面,比如mybatis做數(shù)據(jù)庫操作強(qiáng),但是他不能做其它的。

3. 框架是一個(gè)軟件

三、mybatis框架

一個(gè)框架,早期叫做ibatis,  代碼在github。

mybatis是 MyBatis SQL Mapper Framework for Java (sql映射框架)

1)sql mapper :sql映射

        可以把數(shù)據(jù)庫表中的一行數(shù)據(jù)  映射為 一個(gè)java對象。

一行數(shù)據(jù)可以看做是一個(gè)java對象。操作這個(gè)對象,就相當(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是一個(gè)sql映射框架,提供的數(shù)據(jù)庫的操作能力。增強(qiáng)的JDBC,使用mybatis讓開發(fā)人員集中精神寫sql就可以了,不必關(guān)心Connection,Statement,ResultSet的創(chuàng)建,銷毀,sql的執(zhí)行。

聲明: 本文由入駐維科號的作者撰寫,觀點(diǎn)僅代表作者本人,不代表OFweek立場。如有侵權(quán)或其他問題,請聯(lián)系舉報(bào)。

發(fā)表評論

0條評論,0人參與

請輸入評論內(nèi)容...

請輸入評論/評論長度6~500個(gè)字

您提交的評論過于頻繁,請輸入驗(yàn)證碼繼續(xù)

  • 看不清,點(diǎn)擊換一張  刷新

暫無評論

暫無評論

    掃碼關(guān)注公眾號
    OFweek人工智能網(wǎng)
    獲取更多精彩內(nèi)容
    文章糾錯(cuò)
    x
    *文字標(biāo)題:
    *糾錯(cuò)內(nèi)容:
    聯(lián)系郵箱:
    *驗(yàn) 證 碼:

    粵公網(wǎng)安備 44030502002758號