1.在MyBatis的Mapper文件中,以下選項配置錯誤的是(A)
正確答案是D 您的回答是A 回答錯誤
分析:此題考查MyBatis對於增刪改查的配置,選項d誤把parameterType寫成了resultType,parameterType表示參數配置而resultType表示返回值配置,因此這里選擇d
2.在一個MyBatis的應用中,關於SlqessionFactoyfBuilder,SqlsessionFactory以及Sqlsession的應用范圍和生命周期,以下說法錯誤的是(A)
正確答案是D 您的回答是A 回答錯誤
分析:此題目考查的是SqlSession的生命周期管理,SqlSessionFactoryBuilder因為可以直接實例化,並且創建SqlSessionFactory之后就銷毀,因此它是方法范圍,SqlSessionFactory應該在應用運行期間都存在,不能頻繁銷毀和創建,因此它是應用范圍,SqlSession是線程不安全的,不同線程之間不能共享使用,因此d不正確
3.以下關於MyBatis的使用場景描述錯誤的是(A)
正確答案是C 您的回答是A 回答錯誤
分析:
A描述正確:因為完全透明應該用JDBC,並不適合Mybatis
B描述正確:Mysql因為使用SQL語句映射,不同數據庫SQL語法不同,所以不適合MyBatis
D描述正確:Mybatis只支持相對動態SQL語句,SQL寫死在映射文件,不屬於完全動態
C描述錯誤:Mybatis的特點就是功能相對簡單時,性能很高,所以非常適合Mybatis,C描述說不適合Mybatis,是錯誤的
4.現有兩個實體類User.java和Address.java,代碼片段如下: D
正確答案是B 您的回答是D 回答錯誤
分析:使用collection, javaBean里的屬性不是普通屬性,而是一個集合,那么property:指的是User這個POJO里的屬性名(addressList) ofType:指的是addressList這個list里面存放的是:Address對象,result的column對應的sql語句中的字段名(這里起了個別名:a_id)
5.在MaBatis中,以下關於緩存說法錯誤的選項是(D)
正確答案是 C 您的答案是D 回答錯誤
分析:MyBatis的全局二級緩存開關默認為true。
6.關於ResultType取值錯誤的是(C)
正確答案是 A 您回答的是 C 回答錯誤
分析:esultType表示從該語句中返回的期望類型的類的完全限定名或別名,resultType=”Integer” 其中Integer不是別名,別名是integer,映射類型是java.lang.Integer
7.在Mybatis中,關於<resultmap>和<collection>元素說法錯誤的是(BC) 選兩項
正確答案是 B,D 您回答的是 B,C 回答錯誤
分析:<p>< collection>通過type屬性指定集合的類型 property用於指定在Java實體類是保存集合關系的屬性名稱</p>
8.在Mybatis中,下列關於ResultType說法錯誤的是:(B)
正確答案是 C 您回答的是 B 回答錯誤
分析:選項C的說法錯誤,當pojo的屬性名與sql語句查詢出來的字段名不一致的時候,需要使用resultMap來進行結果的映射,不能使用resultType
9.有如下配置: 通過以下配置判斷,下列描述正確的是(C)
正確答案是 A 您回答的是 C 回答錯誤
分析:<p>resultMap元素的子元素collection用來處理“一對多”的關系。需要指定映射的Java實體類的屬性,屬性的javaType(一般為ArrayList), javaType屬性表示一個Java類的完全限定名,或一個類型別名(參加上面內建類型別名的列表)。如果你映射到一個JavaBean,MyBatis通常可以自動判斷類型。然而,如果你映射到的是HashMap,那么你應該明確地指定javaType來保證所需的行為。如果你映射到的是HashMap,那么你應該明確地指定javaType來保證所需的行為。列表中對象的類型ofType(Java實體類);對應的數據庫表的列名稱;因此正確答案選a</p>
10.關於MyBatis的全局配置文件中,settings元素設置項的默認值偉false的是(A)
正確答案是 D 您回答的是 A 回答錯誤
分析:useGeneratedKeys:允許JDBC 生成主鍵。需要驅動器支持。如果設為了true,這個設置將強制使用被生成的主鍵,默認值為false,其他設置項都默認值為true
11.如果想讓MyBatis將日志信息輸出到屏幕,以下選項正確的是(A)
正確答案是 C 您回答的是 A 回答錯誤
分析:<!--強制指定MyBatis使用log4j作為日志日志框架,若不指定那么當部署到如Tomcat等應用容器時,會被容器設置為使用common-logging來記錄日志--> <settings> <setting name="logImpl" value="LOG4J"/> </settings> 在mybatis-config.xml中加入 <setting name="logImpl" value="STDOUT_LOGGING"/> 可以在控制台打印sql語句。
12.存在如下配置:以下選項說法錯誤的是(D)
正確答案是 B 您回答的是 D 回答錯誤
分析:B選項當title不為null時1=1和title = #{title}之間沒有AND連接同樣會有運行時異常
B選項很有參考性,不過光加1=1在where后面還不夠,需要同時在第一個if中的
title前還加一個and就OK了!