蘇州科技學(xué)院JAVAEE期末考試試卷(陸衛(wèi)忠版)_第1頁
蘇州科技學(xué)院JAVAEE期末考試試卷(陸衛(wèi)忠版)_第2頁
蘇州科技學(xué)院JAVAEE期末考試試卷(陸衛(wèi)忠版)_第3頁
蘇州科技學(xué)院JAVAEE期末考試試卷(陸衛(wèi)忠版)_第4頁
蘇州科技學(xué)院JAVAEE期末考試試卷(陸衛(wèi)忠版)_第5頁
已閱讀5頁,還剩4頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

試題種類:一、單項選擇題(每題2分,共20分)1。以下對于Servlet程序的表達中,錯誤的選項是(ABD)。A)HttpServlet是一個抽象類,繼承它的子類要強迫實現(xiàn)init()方法,

service()方法、destroy()三個方法,由于這三個方法都是抽象類中的抽象方法。B)HttpServlet類中,init()方法的開象是一個ServletConfig對象,它相當(dāng)于JSP中的application對象。C)HttpServlet類中,doXXX()方法的兩個形參挨次為HttpServletResponse、HttpServletRequest對象。D)假如多個用戶懇求同時接見一個Servlet程序,則init()方法、service()方法、destroy()三個方法會被多個線程運轉(zhuǎn)。2.以下對于過濾器的表達中,正確的選項是(ACD)。A)客戶端懇求激活的過濾器鏈是web應(yīng)用中部署的過濾器鏈的了集。B)懇求接見一個目標資源時,目標資源的輸出信息直接付給客戶端,不再經(jīng)過過濾器的辦理.C)過濾器中,業(yè)務(wù)邏輯代碼是在doFilter()方法內(nèi)實現(xiàn)的.D)過濾器是一種特別的Servlet程序。3.JSP頁面的Servlet程序中,各主要方法的履行先后次序為(C)單項選擇A)getDependants()、jspInit()、jspService()、jspDestroy()B)jspService()、jspInvoke()、_jspDestroy( )C)jspInit()、_jspService( )、jspDestroy( )D)jspInit()、jspService()、jspDestroy()E)_jspService()4.要將request轉(zhuǎn)發(fā)給下一個JSP頁面,可行的方案是(BCD).A)直接使用pageContext。forward()B)經(jīng)過application.getRequestDispatcher()獲取目標資源的RequestDispatcher對象,在履行對象的forward()方法C)使用<jsp:forward〉D)直接使用response.sendRedirect()5.以下哪些些關(guān)系屬于Web組件的關(guān)系關(guān)系(ACD)A)懇求重定向B)提交表單數(shù)據(jù)C)懇求轉(zhuǎn)發(fā)D包含6.對于在web。xml文件中配置歡迎文件清單說法正確的選項是(ACDE)。A)使用<welcome—file-list〉元素配置歡迎清單B)只好配置一個歡迎文件C)能夠配置多個歡迎文件D)Web容器調(diào)用會挨次找尋歡迎文件,直到找到為止E)假如web容器找不到歡迎文件則報404錯誤。7.以下對〈action—mapping>元素屬性描繪正確的有(ABCD)。A)ClassName和action元素對應(yīng)的配置元素B)forward轉(zhuǎn)發(fā)的URL路徑C)Input:輸入表單的URL路徑,當(dāng)表單考證失敗時,將把懇求轉(zhuǎn)發(fā)到該URL.D)name:指定和Action關(guān)系的ActionFormBean的名字。E)path:指定接見Action的路徑,以“/”開頭,無擴展名.8.依據(jù)UML語言,類之間存在哪幾種關(guān)系(ACD).A)關(guān)系關(guān)系B)積累關(guān)系C)依靠關(guān)系D)繼承關(guān)系9.履行下邊的SQL查問,對于返回值的說法,正確的選項是(B).(單項選擇)Selectu。username,u.useridfromcs2011。entity。UseruWhereuisnotnullA)語法錯誤,不可以履行B)返回一個種類為List的實例C)返回一個數(shù)組D)當(dāng)返回結(jié)果只有一條時,返回一個數(shù)組10.一般狀況下,數(shù)據(jù)模型與對象模型之間有那些配置關(guān)系(ABC)。A)表對應(yīng)類B)記錄對應(yīng)付象C)表的字段對應(yīng)類的屬性D)表之間的參照關(guān)系對應(yīng)類之間的依靠關(guān)系11.對于以下程序,Customer對象在第幾行變成長久化狀態(tài)?(Customercustomer=newCustomer();

B)。(單項選擇)Customer.setName( );Sessionsession1=sessionFactory。openSession();Transactiontx1=session1.beginTransaction();//line1Session1.sava(customer);//line2Tmit( );//line3Session.close( );//line4A)lin1B)lin2C)lin3D)lin412。對于Spring的說法錯誤的

(D)。A)Spring是一個輕量級JAVAEE的框架會合。B)Spring包含一個“依靠注入”模式的實現(xiàn)C)使用Spring能夠?qū)崿F(xiàn)申明事務(wù)D)Spring供給了AOP方式的日記系統(tǒng)二、判斷題(每題2分,共三、簡答題(共10分)

10分)1。Spring的核心組件是什么?說明在Spring中實現(xiàn)控件反轉(zhuǎn)IOC的注入方法有那幾種方法。Spring框架中核心組件有三個:Core、Context和Beans.此中最核心的組件就是Beans,SpringBeanFactory。

供給的最核心的功能就是Set注入與結(jié)構(gòu)注入四、應(yīng)用系統(tǒng)設(shè)計(

60分)1.視圖

Input.java

上是新聞系統(tǒng)公布表單

,代碼以下所示,設(shè)對應(yīng)的接收懇求

Servlet

文件名為

Input。java,該

Servlet將用戶表單上提交的信息向客戶端返加以便進行確認。表單HTML代碼:formmethod=”post”action=”。/input”〉標題〈inputtype=”text”name="title”/><br/〉作者<inputtype="text”name="authorname"/〉<br/>類型<inputtype=”radio”name=”category”value="原創(chuàng)”/>原創(chuàng)inputtype=”radio”name=”category"value=”轉(zhuǎn)發(fā)"/〉轉(zhuǎn)發(fā)內(nèi)容〈textareaname="context"/〉〈br/>重點字<inputtype=”checkbox”name=”keyword”value=”音樂”/>社會inputtype=”checkbox”name="keyword”value=”旅行”/>經(jīng)濟<inputtype="checkbox”name=”keyword”value=”電影”/〉體育<inputtype="checkbox”name=”keyword”value="游泳”/〉科技〈br/〉新聞發(fā)生地<selectname=”local"〉optionvalue=”江蘇"〉江蘇</option><optionvalue="上海"selected="selected”〉上海</option〉</select〉<br/〉<inputtype=”submit”name=”Submint”value=”提交"/><br/></form〉試達成(共20分):1)編寫該Servlet(10分)(2)寫出該Servlet的配置文件名和此中Servlet部分的配置;(5分)(3)輸出中文亂碼問題的解決方法。(5分)解:1)Input。java。.PublicclassInputextendsHttpServlet{//在process方法中達成辦理Protectedvoidprocess(HttpServletRequest,HttpServletResponseresponse)ThrowsServletException,IOException{Stringtitile,autorname,categroy,context,keyword[],local;//新聞各項目Stringstrkeyword="";//新聞重點字辦理Stringformat;//顯示格式辦理StringreturnStrNews;//返回新聞信息PrintWriterpw;//輸出titile=request.getParameter(”titile");//獲取新聞標題autorname=request.getParameter(”autorname");//獲取新聞作者categroy=request.getParameter("categroy");//獲取新聞類型context=request。getParameter("context”);//獲取新聞內(nèi)容keyword=request。getParameterValues(”keyword");//獲取新聞重點字local=request.getParameter("local");//獲取新聞發(fā)生地辦理新聞重點字for

(Stringstr

:keyword

){strkeyword+=str+

”,”;}//增添顯示格式format="標題:%s<br〉”+”作者:%s〈br>"+”類型:%s〈br〉"+”內(nèi)容:%s<br>”+"重點字:%s〈br>"+”新聞發(fā)生地:

%s<br

〉”;//辦理好要返回客戶端的新聞信息returnStrNews=String

。format

(format,titile,autorname

,pw=response

。getWriter

categroy();//

,context響應(yīng)

,strkeyword);pw。write(returnStrNews

);//

向客戶端返回pw.flush(

);//刷新pw.close

();//封閉}PublicvoiddoPost()HttpServletRequest,HttpServletResponseresponse)throwsServletEcess(request,response);//此處達成調(diào)用process()方法

,IOException{}}(2)該Servlet

的配置文件名是:

web.xmlServlet部分的配置:<servlet

>〈servlet

—name>

Input〈/servlet-name

>〈servlet-class

>包名.

Input

</

servlet-class

>〈/servlet

〉〈servlet-mapping<servlet—name

〉〉

Input

</

servlet

—name〉〈url-pattern

>/

input

〈/url-pattern

〉〈/servlet-mapping

>3)輸出中文亂碼問題的解決方法。兩種方法:一種寫一個過濾器。一種是在

servlet

里設(shè)置中文編碼為

GB2312。Request.setCharacterEncoding(“GB2312”);2.設(shè)上題的表單中,用戶提交的數(shù)據(jù)要保留到Mysql的test數(shù)據(jù)庫的表格news中,保留的內(nèi)容分別是標題、作者、關(guān)鍵字、內(nèi)容、新聞發(fā)生地,字段名與表單上的組件name名同樣。按以下要求達成:(共16分)(1)寫出創(chuàng)立該表的SQL語句,字段中包含主鍵id(自增字段);(2)改正上題中的Input.java中的process( )方法,用JDBC保留數(shù)據(jù),保留成功后轉(zhuǎn)向Success。jsp;(10分)解:(1)SQL語句createtablenews(idint(11)primarykeyauto_increament;titilevarchar(80),autornamevarchar(40),keywordvarchar(40),contextvarchar(1024),localvarchar(40));2)Input。javaPublicclassinputextendsHttpServlet{//在process方法中達成辦理Protectedvoidprocess(HttpServletRequest,HttpServletResponseresponse)throwsServletException,IOException{Stringtitile,autorname,context,keyword[],local;//新聞各項目Connectioncon=null;//創(chuàng)立數(shù)據(jù)連結(jié)titile=request。getParameter("titile”);//獲取新聞標題autorname=request.getParameter("autorname”);//獲取新聞作者context=request。getParameter(”context");//獲取新聞內(nèi)容keyword=request.getParameterValues("keyword");//獲取新聞重點字local=request。getParameter("local");//獲取新聞發(fā)生地辦理新聞重點字for(strkeyword:keyword){strkeyword+=strkeyword+",”;}try{Class.forName(”com.mysql。jdbc。Driver");//加載驅(qū)動器con=DriverManager。getConnection(”jdbc:mysql://localhost:3306/studentDB?characterEncoding=utf-8”,"root”),"";PreparedStatementpstmt=conn.prepareStatement("insertintoNews(titile,autorname,context,keyword,local)values(?,?,?,?,?)”);pstmt.setString(1,titile);pstmt.setString(2,autorname);pstmt。setString(3,context);pstmt。setString(4,keyword);pstmt。setString(5,local);intx=pstmt.executeUpdate();if(x>=1)result=true;catch(Exceptione){throwe;finally{if(conn!=null){try{conn。close();}catch(SQLExceptione){TODOAuto-generatedcatchblocke。printStackTrace();}}}if(result)request。getRequestDispatcher(”Success.jsp”)。forward(request,response);//保留成功,轉(zhuǎn)向Success。jsp代碼}}3.假定題二的新聞公布是運轉(zhuǎn)在Strus2框架下,表單的提交保留懇求是由Action達成的,成功后要轉(zhuǎn)向視圖Success。jsp,試達成:(1)寫出需要的實體類(可省略setter/getter方法):(2)寫出實現(xiàn)保留新聞的該Action(Action類名為InputAction.java)(3)寫出該Action的配置文件名和此中的Action解決:(1)實體類News。javapublicclassNews{privateStringtitile;//標題privateStringautorname;//作者privateStringkeyword;//重點字privateStringcontext;//內(nèi)容privateStringlocal;//發(fā)生地publicvoidNews(){supser();}publicvoidNews(Stringtitile,Stringautorname,Stringkeyword,Stringcontext,Stringlocal){this.titile=titile;this。autorname=autorname;this.keyword=keyword;this。context=context;this。local=local;}}(2)InputAction。javaPublicclassInputActionextendsActionSupport{ProtectedvoidaddNews(Newsnews){//這部分代碼假定已達成,可直接調(diào)用}需要達成的其余代碼privateNewsnews;publicNewsgetNews( ){returnnews;}publicvoidsetNews(Newsnews){this.news=news}publicStringexecute()throwsException{this.addNews(news);returnSUCCESS;}}3)Action的配置文件名:Action部分的配置內(nèi)容以下:<action

name=”Input"

class

="包名。InputAction"

method="Input

”>〈result

name=”success"

〉/Success

。jsp</result

〉</action

〉4.請利用Hibenate框架,改寫上題的InputAction中protectedvoidaddNews(Newsnews)方法,實現(xiàn)用戶注冊數(shù)據(jù)寫入數(shù)據(jù)庫(假定SessionFactory類的類名為HiberanteSessionFactory,可直接使用),按以下要求達成:(共10)(1)設(shè)置Hiberante的POJO(即實體類)為News,寫出News類與new表的關(guān)系映照在文件News.hbm。xml的配置內(nèi)容;(2)改寫InputAction。java中的protectedvoidaddNews(Newsnews)方法,使用SessionFactory實現(xiàn)該方法.解:(1)News.hbm。xml(XML文件格式的映照配置部分)<hibernate—mapping〉<classname="包名。News"table=〈idname=”id”column=

”News"〉”id"type=

”。javaInteger.lang〉”〈generatorclass=

”assigned"〉</generator

〉〈/id><propertyname=

”titile

”type="java。lang。String

”>〈columnname="titile

”length=/>”80"〈/property

〉<propertyname="autorname"type="java。lang.String〉”〈columnname="autorname”length="40〉”//property>〈propertyname="keyword”type=”java。.String"lang〉<columnname=”keyword”length="40"/〉</property〉<propertyname=”context”type=。lang”java。String”>columnname=”context”length="1024"/〉/property〉<propertyname="local"type=

”java。.Stringlang

〉”〈columnname=

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論