信思智學(xué)java三階段考試試題_第1頁
信思智學(xué)java三階段考試試題_第2頁
信思智學(xué)java三階段考試試題_第3頁
信思智學(xué)java三階段考試試題_第4頁
信思智學(xué)java三階段考試試題_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、一、單項選擇題(每題2分,共40分)1 .如果要告知Mybatis、創(chuàng)建的資源文件的路徑,下列哪組標(biāo)簽格式正確(B)A <mapping resource=Hsram/beans/UserMapper.xmr7>B <mapper resource=Hsram/beans/UserMapper.xnilH />C <property resource=,srani/beans/UserMapper.xmlM />D <mapping resource=Msram.beans.UserMapper.xmr7>2 .實體類的映射文件UserMappe

2、rxml中的insert標(biāo)簽中INSERT語句中要獲取User對象的 屬性,下列哪種格式正確(D)A (username)B usernameC #(username)D # username)3 .UserMapper.xml執(zhí)行查詢語句SELECT * FROM t_user有返回結(jié)果,如何表示(B)Aproperty =Msram.beans.UserHBresultType=nsram.beans.UsernCparameterTy pe=H sram. beans. UserHDresult=Hsram.beans.User*4 .Mybatis與數(shù)據(jù)庫打交道的核心對象是C)A Se

3、ssionB SessionFactoryC SqlSessionD SqlSessionFactory5 .當(dāng)向數(shù)據(jù)庫中插入User對象時,Mybatis如何找到映射文件中的INSERT語句(A)A通過命名空間下的id來找到要執(zhí)行的映射文件中的sql語句B通過命名空間下的name來找到要執(zhí)行的映射文件中的sql語句C通過映射文件中對應(yīng)SQL語句的id直接執(zhí)行對應(yīng)的語句D通過映射文件中對應(yīng)SQL語句的name直接執(zhí)行對應(yīng)的語句6 .下列代碼運行會報錯的是(B)A Insert(HINSERT INTO t_user (username) VALUES (# username )H)public

4、 abstract void save(User user);B Update("UPDATE t_user SET username = #username) WHERE id = #id)")public abstract void update(User user);C Select("SELECT * FROM t_user")public abstract User getAHUsers();D Select("SELECT * FROM t_user WHERE id = #id")public abstract User

5、 load(int id);7 .對以下代碼解釋錯誤的是(C)<mapper namespace=Hcom.sram.mapper.UserMapperK><insert id=HsaveH parameterType=Hsram.beans.UserH>INSERT INTO Cuser (username) VALUES (#username);</insert>A 這段代碼是XML配置文件和Mapper配合使用B在測試時可以通過mapper.save(user)來插入對象C UserMapper對應(yīng)的插入方法名字可以是add()D 單獨使用 XML 配

6、置的時候 namespace=Mcom.srani.beans.UserM8 .當(dāng)傳遞兩個參數(shù)時,XML配置如下,下列Mapper中對應(yīng)的方法正確的是(D)<select id=MgetUserByUsernameAndPasswordHresultType=ncom.sram.beans.User*1 parameterType=HstringH>SELECT * FROM t_user WHERE username = #username) AND password =#pass);</select>A public abstract User getUser(St

7、ring username,String password);B public abstract User getUser(Param(MusernameH)String username,Param(npassH)String password);C public abstract User getUserByUsernameAndPassword(String username,String password);D public abstract UsergetUserByUsernameAndPassword(Param(HusernameH)String username, Param

8、(npassH)String password);9 .對下列代碼解釋正確的是(D)<select id=MloadchooseH parameterType=Hsram.beans.UserHresu!tType=nsram.beans.UserH>SELECT * FROM t_user WHERE id = # id<choose><when test=nusername!=nuir,>AND username = #username)</when><when test=Mpassword!=nullH>AND password

9、 = #password</when><otherwise>AND real name = #realname) /otherwise </choose></select>第2頁共10頁A 如果前兩個when條件都成立,那么otherwise條件也一定會執(zhí)行B當(dāng)要有一個when條件成立,其余when條件也做執(zhí)行C 如果choose中條件都為空,打印出的SQL語句為SELECT * FROM t_user WHERE id = ? AND realname = ?D如果用戶名和密碼都存在,打印出的SQL語句為SELECT * FROM t_user

10、 WHERE id = ? AND username= ? AND password=?10 .動態(tài)的添加WHERE條件,如果username不為空,則對應(yīng)的SQL語句為(B)<select id=MloadwhereH parameterType=nsram.beans.User11AND passresultType=nsram.beans.UserH>SELECT * FROM t_user<where><if test="usemame!=nuHH>AND username = #username)</if><if tes

11、t=Hpassword !=nullM> word = # password</if><if test=Hrealname!=nullH>AND realname = #realname</if></where></select>A SELECT * FROM t_user WHERE username = ?B SELECT * FROM t_user AND username = ?C SELECT * FROM t_user WHERE AND username = ?D SELECT * FROM t_user WHER

12、E username = ? AND password=? AND realname=? “.UPDATE語句中,如果username不為空,則打印出來的SQL語句為(C)<update id=MupdateH parameterType=Hsram.beans.UserH>UPDATE Cuser<set><if test=Musername!=nullH> username = # username), </if><if test=* password !=nullH> password = # password, </if

13、></set>WHERE id = #id</update>A UPDATE t_user username = ? WHERE id = ?第3頁共10頁B UPDATE t_user SET username = ? WHERE id = ?C UPDATE t_user SET username = ?, WHERE id = ?D UPDATE t_user SET username = ? AND password=? WHERE id = ?12 .Mybatis的二級緩存中在配置文件中出現(xiàn)如下代碼,解釋錯誤的是(D)<cache evictio

14、n=HLRU flushInterval=H6000H size=M 1024H readOnly=HtrueM />A eviction=”LRU”代表緩存算法,默認(rèn)值,可以不寫B(tài) flushinterval二”6000”代表刷新間隔時間,單位為毫秒C size=”1024”代表緩存的對象個數(shù)D readOnly="true”代表如果當(dāng)前緩存一部分?jǐn)?shù)據(jù),再次獲取這部分?jǐn)?shù)據(jù)時從數(shù)據(jù)庫中取13 .在 SpringMVC-servlet.xml 中配置 MyController 類的正確代碼是(A)A <bean id=*7SpringMVCM class=Hsram.con

15、troller.MyControllerH></bean>B <bean name=H/SpringMVCM class=Msram.controHer.MyControllerH></bean>C <mapper id=,7SpringMVCHclass=Hsram.controller.MyControlIerH></mapper >D <mapper name=,7SpringMVC',class=nsram.controller.MyControllerH></mapper >14 .下列

16、代碼為基于注解的請求映射,解釋錯誤的是(D)©ControllerRequestMapping('7user”)public class MyControllerRequestMapping(VuserAddn)public String save()System.out.println(nsave.return HsuccessM;A ®RequestMapping(,7user”)代表添加一個全局的請求路徑B RequestM叩ping("/userAdd")代表給某個方法映射請求路徑C 基于注解的請求映射MyController類不再需要繼

17、承Multi ActioncontrollerD 以上代碼中的RequestM叩ping都可以省略15 .以下是一位同學(xué)寫的一段Rest風(fēng)格接收參數(shù)代碼,說法錯誤的是(C)RequestMapping(value= "userAdd/ userid/username)")public String save(Param(nuserIdH) int id,Param(MusernameH)String username) System.out.println(Hsave.,+id+H-H+username);return HsuccessH;IA userid相當(dāng)于占位符的意

18、思B ("userid”)前面應(yīng)該加路徑變量注解C 代碼有誤,Param應(yīng)修改為PathVariableD代碼有誤,應(yīng)該把Param去掉16 .以下關(guān)于方法請求映射路徑正確的是(A)A RequestMapping(value= "userAdd/*")地址欄訪問此方法 userAdd/abc userAdd/abc/defB RequestMapping(value= "userAdd/*")地址欄只能通過 userAdd/a 來訪問C RequestMapping(vakie="userAdd?”) userAdd 后面可以跟一個

19、或多個字符D RequestMapping(vakie="userAdd*") userAdd 后面必須跟一個或多個字符17 .對以下代碼分析正確的是(D)RequestMapping( ,7paraniIH)public String param 1 (String a)System.out.println(str+HM+a);return Hsuccessn;JA 地址欄通過paraml?str=zs可以訪問,不會報錯B 地址欄通過paraml?str=zs&a=10, a接收不到數(shù)據(jù)C 把int換成Integer,地址欄通過param 1 ?s

20、tr=zs可以訪問D 把int換成Integer,地址欄通過paraml?str=zs,后臺a得到zs018 .對以下代碼分析錯誤的是(D)RequestMapping( H/parani2H)public Stringparam2(RequestParam(required=false,defaultValue=Madmin,value=Musern)String str)System.out.println(str);return HsuccessH; )A RequestParam代表請求參數(shù)B required二false,默認(rèn)為true,必須要傳遞該參數(shù),改為false則可以不用傳C

21、 defaultValuezz-admin",當(dāng)設(shè)置false時可以手動綁定一個默認(rèn)值D vakie="user”有或者沒有value值時,傳遞過來的參數(shù)名稱可以都為str19 .關(guān)于文件上傳的說法錯誤的是(C)A 需要導(dǎo)入 commons-fileupload- 1.2.2.jar 和 conimons-io-2.4.jar 兩個 jar 包B需要在springMVC-servlet.xml中配置上傳解析器C 上傳文件時可以不用加請求參數(shù)RequestParam(“file”)D多文件上傳時用數(shù)組接收,循環(huán)判斷接收20 .不是Mybatis配置文件中的主要元素是(D)A

22、propertiesB transactionManagerC mappersD bean二、判斷題(每題1分,共10分)1 .實體類的映射文件XXXMapper.xml中的insert標(biāo)簽中的parameterType屬性表示參數(shù)類 型,是執(zhí)行insert語句時傳遞過來的XXX對象3)2 .Mybatis中如果要使用注解配置,則要提供一個UserMapper類(7 )3 .當(dāng)需要執(zhí)行不同的SQL語句時,可以通過標(biāo)簽條件,動態(tài)的調(diào)整SQL語句(/)4 .Mybatis的緩存機制中,如果第二次執(zhí)行相同語句時會再次查詢數(shù)據(jù)庫(X)5 .設(shè)置是否使用緩存,可以在語句select標(biāo)簽中添加useCac

23、he二"true” (X )6 .在視圖解析器中property name="prefix" value="/abc/"代表增加后綴(/ )7 .RequestMapping給方法映射請求路徑時可以一個請求映射不同的路徑(/ )8 .SpringMVC處理數(shù)據(jù)默認(rèn)為轉(zhuǎn)發(fā)(/)(不確定)9.當(dāng)出現(xiàn)錯誤信息時最好轉(zhuǎn)發(fā)到錯誤界面(/)lO.SpringMVC的攔截器可以在Controller與jsp界面的任何地方實行攔截(X ) 三、填空題(每空1分,共10分)1.Spring set 注入對象的注解是 ® Autowired 或者

24、9;Qualifier。2.MyBatisv Hibernatex JDBC在項目過程中按功能需求優(yōu)先選擇 MyBatis。按效率優(yōu)先選擇 JDBC o3.SpringMVC處理數(shù)據(jù)重定向使用的關(guān)鍵字是 redirect。4 .列出 SpringMVC 常用的 4 個注解 Session Attributes , CookieValue , RequestParam, ©Controller, RequestMapping.©path Vari able©Resource ©Autowired5 .Spring框架中業(yè)務(wù)層(service)的IOC的常用

25、注解是©Autowired 四、簡答題(每題5分,共20分)1、簡述MyBatis中#與$的區(qū)別是預(yù)編譯處理,$是字符串替換;Mybatis在處理#時,會將sql中的#替換為?號,調(diào)用PreparedStatement的set方法來 賦值;Mybatis在處理$時,就是把$替換成變量的值;使用#可以有效的防止SQL注入,提高系統(tǒng)安全性。2、簡述SpringMVC工程搭建步驟會話工廠配置XML文件創(chuàng)建 SqISESSionFactory3 .簡述Spring的IOC編程思想方便解耦,方便程序開發(fā),通過IOC容器,把程序中的依賴交給spring去管理控制4 . Spring AOP的通知

26、類型有那些,并簡單闡述。Before前置通知,在一個方法執(zhí)行前被調(diào)用AfterReturning后置通知,在方法成功完成后調(diào)用的通知Around環(huán)繞通知,在方法執(zhí)行之前和之后調(diào)用的通知AfterThrowing異常通知,在方法拋出異常退出執(zhí)行的通知After最終通知,在方法執(zhí)行之后調(diào)用的通知,無論方法執(zhí)行是否成功五、程序題(每題10分,共20分)User 類:id, name, password 三個屬性。1、編寫一個Controller類,使用/user訪問該類,并訪問其中的login方法。在控制臺打印 "hello,sram”,將用戶名sram存入session后,跳轉(zhuǎn)至inde

27、x.jsp界面。2、編寫一個Controller類,使用/user訪問該類,并訪問其中的register (注冊)方法。在注冊 信息時用Ajax判斷用戶名是否可用(1表示可用,0表示不可用)。A propertiesB transactionManager(mappersD bean二、判斷題(每題1分,共20分):體類的映射文件UserMappenxm1中的六心標(biāo)簽中的paramelerType屬性表示參名 /rVUT msert語句時傳遞過來的User對象。2 .向數(shù)據(jù)庫中插入 User 對象時,session.insert(UserCass.geiName()+“.add”,j 減少代碼得錯誤率()/3 .Mybalis中如果要使用注解配置,則要提供一個UscrMapper類/1 JscrMapper.xml去掉,換成注解配置,則mybatis-config.xml中可以不做修改操作5.當(dāng)需要執(zhí)行不同的SQL語句時,可以通過標(biāo)簽條件,動態(tài)的調(diào)整SQL語句/ 是給包含的語句添加前綴和后綴(,ZMybatis的緩存機制中

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論