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的執行。