1、MyBatis中在查詢進行select映射的時候,返回類型可以用resultType,也可以用resultMap,resultType是直接表示返回類型的,而resultMap則是對外部ResultMap的引用,但是resultType跟resultMap不能同時存在
2、resultType與resultMap在任何時候都不可以同時使用。
對於resultMap自動映射有三個匹配級別,當采用默認級別配置的時候,若使用association進行內部嵌套的話,只能匹配你指定的屬性
3、在MyBatis中,對於Insert映射語句有一個useGeneratedKeys屬性,該屬性的默認值為 false
4、關於MyBatis中sq1映射文件中各個元素說法正確的是
增刪改(insert, delete, update)這些數據庫操作默認返回執行SQL影響的行數,所以DA0層.
的接口的方法返回值一般設置為int類型
insert,delete,update這些更新數據操作元素中不能設置resultType,resultMap
5、在MyBatis中,以下關於“無效的列類型: 1111 錯誤” 說法正確的選項是
以上錯誤通常是由於傳入參數的屬性與數據庫字段類型不-致導致
以上錯誤的解決辦法是排查所有傳入參數與數據庫對應字段的類型,
以上錯誤的解決辦法是通過指定jdbcType類型來避免
6、在MyBatis中,關於mapper配置文件常用屬性的說法中正確的是
parameterType屬性用來指定傳入參數的類型
flushCache用來指定執行語句后是否會清空緩存,增刪改操作時默認為true
timeout屬性用來指定驅動程序等待數據庫返回結果的超時時間
7、在MyBatis的應用中,我們一般需要設置一個超時時間,當數據庫操作超過超時時間后MyBatis將執行異常終止操作,可以用 defaultStatementTimeout來設置全局超時時間
8、在MyBatis中,說法正確的是
9、在使用MyBatis的時候,除了可以使用@Param注解來實現多參數入參,還可以用 Map對象可以實現傳遞多參數
10、在MyBatis的開發中,表中的字段名和表對應實體類的屬性名稱不一定都是完全相同的,說法正確的是
A:查詢的列起和類屬性名相同的別名, 讓字段名的別名和實體類的屬性名一致
B: MyBatis可以配置resul tlMap標簽,來映射字段名和實體類屬性名的一一對應關系
11、Mybatis中,關於resultlMap collection嵌套查詢(select)方式說法正確的是
Column屬性設置關聯的主鍵列,用於嵌套查詢SQL語句傳入參數,多個用逗號分開。
12、在MyBatis中,下列關於resultType和resultMap說法正確的是 resultType也可以是Map數據結構
13、resultMap中association的各個屬性的含義:
property:映射數據庫列的字段或屬性。
colum:數據庫的列名或者列標簽別名。
javaTyp:完整java類名或別名。
jdbcType支持的JDBC類型列表列出的JDBC類型。這個屬性只在insert,update或delete的時候針對允許空的列有用。
resultMap: 一個可以映射聯合嵌套結果集到一個適合的對象視圖上的ResultMap。這是一個替代的方式去調用另一個select語句。
14、當pojo的屬性名與sql語句查詢出來的字段名不一致的時候,需要使用resultMap來進行結果的映射,不能使用resultType
15、下列關於MyBatis中parameterType的說法正確的是
A:當把一個List實例或者數組作為參數對象傳給MyBatis的時候,myBatis會自動將它包裝在一個Map中,
List實例將會以“list”作為鍵,而數組實例將會以“array”作為鍵。那么在配置文件中的parameterType是可以不配置
B: MyBatis的傳入參數如果是一個List或數組,可以使用mapper配置文件中的foreach語句
C: MyBatis的傳入參數也可是復雜數據類型:包含Java實體類、Map。通過# {屬性名}或# {Map的key}即可獲取傳入的值
16、在MyBatis應用中,當單表數據量很小的情況下,可以使用Mybatis的RowBounds實現內存分頁,以下選項說法正確的是
17、在處理數據庫中的數據時,Mybatis、Hibernate和JDBC哪種技術的效率最高
答案:JDBC,因為Mybatis、Hibernate是ORM框架,封裝了JDBC,簡化了復雜的JDBC操作,沒有直接使用JDBC效率高。
18、在MyBatis動態SQL中,以下說法正確的是
A:利用if標簽實現簡單的條件選擇
B: where標簽可以簡化SQL語句中的where子句處理
C: trim標簽可以靈活地去除多余的關鍵字
19、有關MyBatis中動態SQL的說法中正確的是
A: where元素可以動態創建where子句,且編寫時無需考慮以and開頭的情況
B: set元素可以為update語句動態創建set子句