Mybatis初步認識
分三層
第一章
1.三層架構
介面層:和用戶打交道,接收用戶的請求參數明顯是處理結果的(jsp,html,servlet)
業務邏輯層:接收了介面層傳遞的數據,計算邏輯,調用資料庫,獲取數據
數據訪問層:就是訪問資料庫,執行對數據的查詢,修改,刪除等等的
三層對應的包
介面層:controller包(servlet)
業務邏輯層:servlce包(XXXservlce類)
數據訪問層:dao包(XXXDao類)
三層中類的的交互
用戶使用介面層–>業務邏輯層–>數據訪問層(持久層)–>資料庫(mysql)
三層對應的處理框架
介面層—servlet—springmvc(框架)
業務邏輯層—service類—spring(框架) 1,2兩個比較大 所以推薦先學習第三個
數據訪問層–dao類—mybatis(框架)
2,框架(Framework)
框架是一個舞台,一個模板,
模板:
1.規定好了一些條款,內容。
· 2.加入自己的東西
框架是一個模板
1.框架中定義好了一些功能,這些功能是可用的
2。可以加入項目中自己的功能,這些功能可以利用框架中寫好的功能
框架是一個軟體,半成品的軟體,定義好了一些基礎功能,需要加入你的功能就是完整的,基礎功能是可重複使用的,可升級的
框架特點:
1.框架一般不是全能的,不能做所有事情
2. 框架是針對某一個領域有效,特長在一個方面,比如mybatis做資料庫操作強,但是他不能做其他的
3.框架是一個軟體!
mabatis框架
一個框架,早期叫做ibatis,程式碼在github
mybatis是 MyBatis SQL Mapper Framework for Java(sql映射框架)
1)sql mapper(sql映射)
可以把資料庫表中的一行數據 映射為一個java對象
一行數據可以看作是一個java對象。操作這個對象,就相當於操作表中的數據
2)Data Access Object(DAOs):數據訪問,對資料庫執行增刪改查。
mybatis提供了哪些功能
1.提供了創建Connection,Statement,Resultset的能力,不用開發人員創建這些對象
2.它提供了執行sql語句的能力,不用你執行sql
3.提供了循環sql,把sql的結果轉為java對象,List集合的能力
while(rs,next()){
Student stu = new Student();
stu.setId(rs.getInt(‘”id”));
stu,setName(rs.getString(“”name));
stu.setAge(rs.getInt(“age”));
stuList.add(stu);
}
4.提供了關閉資源的能力,不用你關閉Connection,Statement,Resultset
開發人員做的是,提供sql語句(站在巨人的肩膀上哈哈哈哈哈)
最後是開發人員提供sql語句—>mybatis處理sql—>開發人員得到List計集合或java對象(表中數據)
總結:mybatis是一個sql映射框架,提供的資料庫的操作能力。增強的JDBC
使用mybatis讓開發人員集中精神寫sql就可以了,而不必關心Connection,Statement,Resultset等的創建,銷毀,sql的執行。