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

最新活動更多
推薦專題
- 1 UALink規(guī)范發(fā)布:挑戰(zhàn)英偉達AI統(tǒng)治的開始
- 2 小米YU7新增835公里續(xù)航版,6-7月面市
- 3 昆侖萬維24年營收56億,AI出海商業(yè)化獲重要進展
- 4 “AI寒武紀”爆發(fā)至今,五類新物種登上歷史舞臺
- 5 降薪、加班、裁員三重暴擊,“AI四小龍”已折戟兩家
- 6 光計算迎來商業(yè)化突破,但落地仍需時間
- 7 大模型下半場:Agent時代為何更需要開源模型
- 8 優(yōu)必選:營收大增主靠小件,虧損繼續(xù)又逢關稅,能否乘機器人東風翻身?
- 9 中國“智造”背后的「關鍵力量」
- 10 全球無人駕駛技術排名:誰才是細分賽道的扛把子?