第六章 初識MyBatis--習題答案

課程介紹:“框架技術”是軟件工程專業的核心課程,是本專業限選課,是Java 應用開發課程,是本專業學生就業的主要方向。
說明:框架設計其他章節的習題答案也在此“spring框架設計”專欄。

一、 填空題

  1. MyBatis的刪除操作在映射文件中是通過配置【update】元素來實現的。
  2. MyBatis映射文件中元素是配置文件的根元素,它包含一個【namespace】屬性,該屬性爲這個指定了唯一的命名空間。
  3. 使用MySQL中的【concat()】函數進行字符串拼接,可以有效防止模糊查詢時可能出現的SQL注入問題。
  4. mybatis-config.xml作爲MyBatis的全局配置文件,配置了MyBatis的運行環境等信息,其中主要內容是獲取【數據庫連接】。
  5. 【MyBatis】是當前主流的Java持久層框架之一,它與Hibernate一樣,也是一種ORM框架。

二、 判斷題

  1. MyBatis映射文件中元素是配置文件的根元素,它包含一個namespace屬性,該屬性爲這個指定了唯一的命名空間。(×)
  2. 使用MyBatis框架非常簡單,只需在應用程序中引入MyBatis框架lib目錄中的全部JAR包以及數據庫驅動包即可進行項目運行。(×)
  3. ORM就是一種爲了解決面向對象與關係型數據庫中數據類型不匹配的技術,它通過描述Java對象與數據庫表之間的映射關係,自動將Java應用程序中的對象持久化到關係型數據庫的表中。(√)
  4. MyBatis的更新操作也需要進行事務提交。(√)
  5. 創建的映射文件中的SQL語句要以面向對象的寫法進行書寫。(×)

三、 選擇題

  1. MyBatis的刪除操作有關說發錯誤的是。(D)
    A: MyBatis的刪除操作在映射文件中是通過配置元素來實現的。
    B: MyBatis的刪除操作也需要進行事務提交。
    C: MyBatis的刪除操作執行了SqlSession的delete()方法。
    D: MyBatis的刪除操作和添加操作時,也需要封裝整個實體類。
  2. MyBatis的更新操作有關說發錯誤的是。(D)
    A: MyBatis的更新操作在映射文件中是通過配置元素來實現的 。
    B: MyBatis的更新操作也需要進行事務提交。
    C: MyBatis的更新操作執行了SqlSession的update()方法 。
    D: MyBatis的更新操作和添加操作時,只需要將insert()方法改爲updat()方法即可。
  3. 關於MyBatis模糊查詢中進行SQL字符串拼接時,說法錯誤的是。(C)
    A: 使用“${}”進行SQL字符串拼接時,無法防止SQL注入問題。
    B: 可以使用MySQL中的concat()函數進行字符串拼接。
    C: 使用MySQL中的concat()函數進行字符串拼接,也無法防止SQL注入。
    D: 使用MySQL中的concat()函數進行字符串拼接,導致數據庫移植性變差。
  4. 有關MyBatis工作原理說法錯誤的是。(C)
    A: MyBatis的全局配置文件配置了MyBatis的運行環境等信息,其中主要內容是獲取數據庫連接
    B: MyBatis映射文件中配置了操作數據庫的SQL語句,需要在MyBatis的全局配置文件中加載才能執行
    C: 可以通過MyBatis的環境等配置信息構建會話對象SqlSession
    D: SqlSession對象,該對象中包含了執行SQL的所有方法
  5. 使用ORM框架後,應用程序不再直接訪問底層數據庫,而是以()的方式來操作持久化對象(PO,即Persisent Object)。(C)
    A: 面向業務B: Hibernate C: 面向對象 D: MyBatis

四、 簡答題

1. 請簡述Hibernate和MyBatis這兩個框架的主要區別。
Hibernate是一個全表映射的框架。通常開發者只需定義好持久化對象到數據庫表的映射關係,就可以通過Hibernate提供的方法完成持久層操作,開發者並不需要熟練的掌握SQL語句的編寫,所以其開發效率會高於MyBatis。
而Hibernate自身也存在着一些缺點,例如它在多表關聯時,對SQL查詢的支持較差;更新數據時,需要發送所有字段;不支持存儲過程;不能通過優化SQL來優化性能等。這些問題導致其只適合在場景不太複雜且對性能要求不高的項目中使用。
MyBatis是一個半自動映射的框架。這裏所謂的“半自動”是相對於Hibernate全表映射而言的。與Hibernate相比,雖然使用MyBatis手動編寫SQL要比使用Hibernate的工作量大,但MyBatis可以配置動態SQL並優化SQL,可以通過配置決定SQL的映射規則,它還支持存儲過程等。對於一些複雜的和需要優化性能的項目來說,顯然使用MyBatis更加合適。

整理不易,如有幫助請點贊支持!

發佈了19 篇原創文章 · 獲贊 2 · 訪問量 964
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章