《太原理工大學(xué)_WEB系統(tǒng)與技術(shù)試卷_0_2.doc》由會員分享,可在線閱讀,更多相關(guān)《太原理工大學(xué)_WEB系統(tǒng)與技術(shù)試卷_0_2.doc(15頁珍藏版)》請在裝配圖網(wǎng)上搜索。
說明:本試卷為A、B兩卷綜合,小編未整理。
一、選擇題
1、HTTP哪個請求方式,請求參數(shù)會出現(xiàn)在網(wǎng)址列上?
(A) GET (B) POST
2、Web容器在收到瀏覽器請求時,會如何處理請求?
(A) 使用單一執(zhí)行緒處理所有請求
(B) 一個請求就建立一個執(zhí)行緒來處理請求
(C) 一個請求就建立一個行程來處理請求
(D) 一個請求就執(zhí)行一個容器來處理請求
3、Java EE中各技術(shù)標(biāo)準(zhǔn)最后將由什么文件明訂規(guī)范?
(A) JCP (B) JSR (C) JDK
4、在JSP中,要定義一個方法,需要用到以下( )寫法。
A. <%= %> B. <% %> C. <%! %> D. <%@ %>
4、在J2EE中,在web.xml中,有如下代碼:
30
上述代碼定義了默認(rèn)的會話超時時長,時長為30( )。
A. 毫秒 B. 秒 C. 分鐘 D. 小時
6、JavaWeb 中( )類的( )方法用于創(chuàng)建對話。
A. HttpServletRequest、getSession
B. HttpServletResponse、newSession
C. HtttpSession、newInstance
D. HttpSession、getSession
7、給定一個 Servlet 的doGet方法中的代碼片段,如下:
request.setAttribute(“name”,”zhang”);
response.sendRedirect(“http://localhost:8080/servlet/MyServlt”);
那么在Servlet 中可以使用( )方法把屬性 name的值取出來。
A. String str=request.getAttribute(“name”);
B. String str=(String)request.getAttribute(“name”);
C. Object str=request.getAttribute(“name”);
D. 無法取出來
8、下邊哪個不是JSP的內(nèi)置對象?( )
A. session B. request C. cookie D. out
9、關(guān)于get和post兩種請求,下列說法正確的是?( )
A. Form表單默認(rèn)請求是get請求。
B. get請求處理的數(shù)據(jù)量大小不受到限制。
C. post請求地址欄里是能看到數(shù)據(jù)的,所以傳送用戶信息盡量避免使用。
D. post請求可以由doGet方法處理。
10、下面哪一個是正確使用JavaBean的方式?( )
A.
B.
C.
D.
11、在Java Web開發(fā)中,不同的客戶端需要共享數(shù)據(jù),則數(shù)據(jù)應(yīng)該存儲在( )中。
A. session B. application C. request D. response
12、在WEB應(yīng)用程序的目錄結(jié)構(gòu)中,在WEB-INF文件夾外的文件為( )。
A. jsp文件 B. class文件 C. jar文件 D. web.xml文件
13、以下( )可用于檢索session屬性userid的值。
A. session. getAttribute (“userid”);
B. session. setAttribute (“userid”);
C. request. getParameter (“userid”);
D. request. getAttribute (“userid”);
14、在JSP中,有EL表達(dá)式${10*10 ne 10},結(jié)果是( )。
A. 100 B. true C. fasle D. 以上都不對
15、有關(guān)會話跟蹤技術(shù)描述不正確的是( )。
A. Cookie是Web服務(wù)器發(fā)送給客戶端的一小段信息,客戶端請求時,可以讀取該信息發(fā)送到服務(wù)
器端
B. 關(guān)閉瀏覽器意味著會話ID丟失,但所有與原會話關(guān)聯(lián)的會話數(shù)據(jù)仍保留在服務(wù)器上,直至?xí)掃^期
C. 在禁用Cookie時可以使用URL重寫技術(shù)跟蹤會話
D. 隱藏表單域?qū)⒆侄翁砑拥紿TML表單并在客戶端瀏覽器中顯示
16、在JSP頁面中使用
標(biāo)簽,對session中集合對象arr進(jìn)行迭代時,items屬性賦值正確的是( )。
A.
B.
C.
D.
17、在Servlet過濾器的生命周期方法中,每當(dāng)傳遞請求或響應(yīng)時,web容器會調(diào)用( )方法。
A.init B.service C.doFilter D.destroy
18、利用MVC結(jié)構(gòu)搭建某網(wǎng)上書店系統(tǒng),設(shè)計用戶登陸界面,如果你是設(shè)計人員,你將在三層結(jié)構(gòu)的( )中實現(xiàn)。
A.模型層 B.視圖層 C.數(shù)據(jù)訪問層 D.控制層
19、Servlet/JSP主要是屬于哪個Java平臺的規(guī)范之中?
(A) Java SE (B) Java ME (C) Java EE (D)其他
20、在JSP中,要直接輸出一個值,需要用到以下( )寫法。
A. <%= %> B. <% %> C. <%! %> D. <%@ %>
21、Servlet/JSP必須基于哪一類型的容器才能提供服務(wù)?
(A)Applet容器 (B)應(yīng)用程序客戶端容器
(c)web容器 (D)其他
22、關(guān)于get和post兩種請求,下列說法正確的是?( )
A. get請求處理的數(shù)據(jù)量大小不受到限制。
B. post請求可以由doGet方法處理。
C. Form表單默認(rèn)請求是get請求。
D. post請求地址欄里是能看到數(shù)據(jù)的,所以傳送用戶信息盡量避免使用。
23、在Web應(yīng)用程序的檔案與目錄結(jié)構(gòu)中,web.xml是直接放置在哪個目錄之中?
(A) WEB-INF目錄 (B) conf目錄
(C) lib目錄 (D) classes目錄
24、何者可以實作使用者的自動登入機(jī)制?
(A) HttpSession (B) Cookie
(C) HttpServletRequest (D) URL重寫
25、關(guān)于JSP的描述,哪個正確?
(A) JSP是直譯式的網(wǎng)頁,與Servlet無關(guān)
(B) JSP會先轉(zhuǎn)譯為.java,然后編譯為.class載入容器
(C) JSP會直接由容器動態(tài)生成Servlet實例,無需轉(zhuǎn)譯
(D) JSP是丟到瀏覽器端,由瀏覽器進(jìn)行直譯
26、使用Statement的executeQuery()方法,會傳回哪個型態(tài)?
(A) int (B) boolean
(C) ResultSet (D) Table
27、若要針對HTTP請求撰寫Servlet類別,以下何者是正確的作法?
(A) 實作Servlet界面
(B) 繼承GenericServlet
(C) 繼承HttpServlet
(D) 直接定義一個結(jié)尾名稱為Servlet的類別
28、續(xù)上題,如何針對HTTP的GET請求進(jìn)行處理與響應(yīng)?
(A) 重新定義service()方法
(B) 重新定義doGet()方法
(C) 定義一個方法名稱為doService()
(D) 定義一個方法名稱為get()
29、HttpServlet是定義在哪個套件之中?
(A) javax.servlet
(B) javax.servlet.http
(C) java.http
(D) javax.http
30、你在web.xml中定義了以下的內(nèi)容:
Goodbye
cc.openhome.LogutServlet
GoodBye
/goodbye
哪個URL可以正確的要求Servlet進(jìn)行請求處理?
(A) /GoodBye
(B) /goodbye.do
(C) /LoguotServlet
(D) /goodbye
31、在Web應(yīng)用程序中,何者負(fù)責(zé)將HTTP請求轉(zhuǎn)換為HttpServletRequest物件?
(A) Servlet物件
(B) HTTP服務(wù)器
(C) Web容器
(D) JSP網(wǎng)頁
32、在Web應(yīng)用程序的檔案與目錄結(jié)構(gòu)中,web.xml是直接放置在哪個目錄之中?
(A) WEB-INF目錄
(B) conf目錄
(C) lib目錄
(D) classes目錄
33、在MVC架構(gòu)中,誰負(fù)責(zé)通知應(yīng)用程序客戶端,應(yīng)用程序本身有狀態(tài)改變?
(A) 模型(Model)
(B) 視圖(View)
(C) 控制器(Controller)
34、MVC與Model 2架構(gòu)最大的差別在于?
(A) Model 2架構(gòu)的視圖是由HTML組成
(B) Model 2架構(gòu)中的模型無法通知視圖狀態(tài)已更新
(C) MVC架構(gòu)是基于請求/響應(yīng)模型
(D) MVC架構(gòu)只能用于單機(jī)應(yīng)用程序
二、填空題
1、JSP有三種類型的元素,分別為:腳本元素 、 指令元素 、 動作元素
2、 get請求的數(shù)據(jù)會附在URL之后,以 ? 分割URL和傳輸數(shù)據(jù),參數(shù)之間以 & 相連。
3、Servlet生命周期可分為四個階段:加載和實例化、初始化、 處理請求 、銷毀。
4、JDBC的主要任務(wù)是:與數(shù)據(jù)庫建立連接 、執(zhí)行SQL語句、 處理結(jié)果 。
5、PreparedStatement接口中 executeUpdate() 方法用于執(zhí)行INSERT等更新語句,并且返回一個整數(shù)。
6、 JSP中,常用的會話跟蹤技術(shù)有Cookie技術(shù)、Session技術(shù)、隱藏表單域技術(shù)、URL重寫技術(shù)。
7、JSTL中,標(biāo)簽用于遍歷集合或迭代指定的次數(shù)。
8、JSTL中, 標(biāo)簽用于進(jìn)行條件判斷。
完善以下登錄后臺代碼
ResultSet rs = null;
PreparedStatement psmt = null;
boolean isLogin = false;
String sql="SELECT * FROM user WHERE u_name = ? AND u_password = ?";
Connection conn = JDBCUtil. getConnection() ;
try {
psmt = conn.prepareStatement( sql );
psmt.setString( 1 , user.getUname());
psmt.setString( 2 , user.getUpassword());
rs = psmt. executeQuery() ;
isLogin = rs. next() ;
} catch (SQLException e) {
e.printStackTrace();
} finally {
JDBCUtil.close(conn, psmt, rs);
}
判斷題
JSP 從本質(zhì)上講可以看成是一個servlet 對象?!?
表單提交數(shù)據(jù)時,用name屬性標(biāo)記傳送名稱,value屬性承載傳送值?!?
Include動作和Include指令執(zhí)行的過程是相同的。
HTTP協(xié)議是一種無狀態(tài)協(xié)議?!?
JDBC用于實現(xiàn)Java與數(shù)據(jù)庫的交互,但是不可以在jsp中使用。
forward動作可以把當(dāng)前網(wǎng)頁重新導(dǎo)向另外的一個服務(wù)器。
超鏈接不可以傳遞參數(shù)。
HTTP協(xié)議是一種有狀態(tài)協(xié)議。
Include動作和Include指令執(zhí)行的過程是不同的?!?
JSP 從本質(zhì)上講可以看成是一個servlet 對象?!?
超鏈接也可以用來傳遞參數(shù)?!?
JDBC用于實現(xiàn)Java與數(shù)據(jù)庫的交互,但是不可以在jsp中使用。
sendRedirect()可以把當(dāng)前網(wǎng)頁重新導(dǎo)向另外的一個服務(wù)器?!?
表單提交數(shù)據(jù)時,用id屬性標(biāo)記傳送名稱,value屬性承載傳送值。
簡答題
簡述JSP四種作用域的生命周期和可訪問性?
頁面域(pageContex),頁面域的生命周期是指頁面執(zhí)行期間。存儲在頁面域的對象只對于它所在頁面是可訪問的。
請求域(request),請求域的生命周期是指一次請求過程。存儲在請求域中的對象只有在此次請求過程中才可以被訪問。
會話域(session),會話域的生命周期是指某個客戶端與服務(wù)器所連接的時間;客戶端在第一次訪問服務(wù)器時創(chuàng)建會話,在關(guān)閉瀏覽器或主動退出后,會話結(jié)束。存儲在會話域中的對象在整個會話期間(可能包含多次請求)都可以被訪問。
應(yīng)用域(application),應(yīng)用域的生命周期是指從服務(wù)器開始執(zhí)行服務(wù)到服務(wù)器關(guān)閉為止,是四個作用域中時間最長的。存儲在應(yīng)用域中的對象在整個應(yīng)用程序運行期間可以被所有JSP和Servlet共享訪問。
簡述轉(zhuǎn)發(fā)與重定向的區(qū)別?
1) 轉(zhuǎn)發(fā)只能將請求轉(zhuǎn)發(fā)給同一個Web應(yīng)用中的組件;而重定向不僅可以重定向到當(dāng)前應(yīng)用程序中的其他資源,還可以重定向到其他站點的資源;
2) 重定向的訪問過程結(jié)束后,瀏覽器地址欄中顯示的URL會發(fā)生改變;而轉(zhuǎn)發(fā)過程結(jié)束后,瀏覽器地址欄保持初始的URL地址不變;
3) 重定向?qū)g覽器的請求直接作出響應(yīng),響應(yīng)的結(jié)果就是告訴瀏覽器去重新發(fā)出對另外一個URL的訪問請求;轉(zhuǎn)發(fā)在服務(wù)器端內(nèi)部將請求轉(zhuǎn)發(fā)給另外一個資源,瀏覽器并不知道在服務(wù)器程序內(nèi)部發(fā)生了轉(zhuǎn)發(fā)行為;
4) 轉(zhuǎn)發(fā)調(diào)用者與被調(diào)用者之間共享相同的request對象和response對象,它們屬于同一個訪問請求和響應(yīng)過程;而重定向調(diào)用者與被調(diào)用者使用各自的request對象和response對象,它們屬于兩個獨立的訪問請求和響應(yīng)過程。
談?wù)勀銓VC分層開發(fā)模式的理解?
MVC模式包含:模型層(Model)、視圖層(View)、控制層(Controller)三個層級。
1) 模型層主要負(fù)責(zé)封裝數(shù)據(jù)和業(yè)務(wù)操作。包括對用戶請求的數(shù)據(jù)和數(shù)據(jù)庫查詢的數(shù)據(jù)進(jìn)行封裝,以及對業(yè)務(wù)處理邏輯進(jìn)行封裝。
2) 視圖層主要指與用戶交互的界面,如:html,jsp等。這層主要用于讓用戶輸入數(shù)據(jù)和顯示數(shù)據(jù)處理后的結(jié)果。
3) 控制層主要的工作就是控制整個系統(tǒng)處理的流程,其角色通常是介于視圖層和模型層之間,進(jìn)行數(shù)據(jù)傳遞和流程轉(zhuǎn)向。
4) 控制層將用戶請求數(shù)據(jù)和業(yè)務(wù)處理邏輯交給相應(yīng)的模型,視圖層從模型中獲取數(shù)據(jù),并跟隨模型層數(shù)據(jù)的更新而更新。開發(fā)人員在后期對項目的業(yè)務(wù)邏輯維護(hù)時,只需要對模型層做更新、變動,而不需要牽扯到視圖層,這樣一來,即可將網(wǎng)頁設(shè)計和程序處理完整的分離,又可使日后的維護(hù)更具彈性。
簡述JSP的運行原理(也可畫圖說明)。
答案一:(畫圖說明)
答案二:(文字說明)
JSP引擎首先查找該請求的jsp文件是否存在,若存在,則判斷該文件是否修改或首次調(diào)用;若不存在,則返回報錯信息,
被修改過的或首次調(diào)用的JSP文件,JSP引擎先將該JSP文件轉(zhuǎn)換成一個Java源文件(Servlet),然后再把該Java源文件編譯成相應(yīng)的class字節(jié)碼文件。
執(zhí)行class字節(jié)碼文件,并將處理的結(jié)果返回給Web服務(wù)器,再返回給客戶端瀏覽器進(jìn)行顯示。
簡述include指令元素與include動作元素的相同點與不同點?
答:
共同點:兩者的作用都是在一個JSP中引入其他的頁面,實現(xiàn)頁面的復(fù)用。
不同點:對包含文件的處理方式和處理時間不同。
include指令元素(靜態(tài)引入),是在翻譯階段就引入所包含的文件,被處理的文件在邏輯和語法上依賴于當(dāng)前JSP頁面,其優(yōu)點是頁面的執(zhí)行速度快。
include動作元素(動態(tài)引入),是在JSP頁面運行時才會引入該文件,被包含的文件在邏輯和語法上獨立于當(dāng)前JSP頁面,其優(yōu)點是可以使用子元素更加靈活地處理所需要的文件,缺點是執(zhí)行速度要慢一些。
完善代碼
ResultSet rs = null;
PreparedStatement psmt = null;
boolean isLogin = false;
String sql="SELECT * FROM user WHERE u_name = ? AND u_password = ?";
Connection conn = JDBCUtil. getConnection() ;
try {
psmt = conn .prepareStatement(sql);
psmt. setString (1, user.getUname());
psmt. setString (2 , user.getUpassword());
rs = psmt. executeQuery() ;
isLogin = rs. next() ;
} catch (SQLException e) {
e.printStackTrace();
} finally {
JDBCUtil.close(conn, psmt, rs);
}
編寫一個動態(tài)顯示用戶列表的頁面。
參考內(nèi)容如下:
用戶ID
用戶名
狀態(tài)
操作
1
admin
正常
修改|刪除
2
zhangsan
正常
修改|刪除
3
lisi
不可用
修改|刪除
已知的信息為:后臺已通過request對象將用戶(User.java)列表信息傳至前臺,傳值的參數(shù)名稱為“userList”,其中User對象的屬性包含:id、name、status;且page指令已導(dǎo)入相關(guān)包和類。
要求:
1)使用table布局實現(xiàn)截圖中所有內(nèi)容(無需寫css樣式、js腳本);
2)列表內(nèi)容必須使用JSP腳本形式實現(xiàn)。
3)列表內(nèi)容必須使用JSTL標(biāo)簽+EL表達(dá)式實現(xiàn)。
答:<%List userList = (List)request.getAttribute("userList"); %>
用戶ID |
用戶名 |
狀態(tài) |
操作 |
<%for(User u:userList){%>
<%=u.getId() %> |
<%=u.getName() %> |
<%=u.getStatus()==1?"正常":"不可用" %> |
修改
刪除
|
<%} %>
答:
用戶ID |
用戶名 |
狀態(tài) |
操作 |
${user.id} |
${user.name} |
${user.status==0?"正常":"不可用"} |
修改刪除 |
.jsp有哪些內(nèi)置對象?作用分別是什么?
application對象代表應(yīng)用程序上下文,它允許JSP頁面與包括在同一應(yīng)用程序中的任何Web組件共享信息。
Config對象允許將初始化數(shù)據(jù)傳遞給一個JSP頁面
Exception對象含有只能由指定的JSP“錯誤處理頁面”訪問的異常數(shù)據(jù)。
Out對象代表提供輸出流的訪問
Page對象代表JSP頁面對應(yīng)的Servlet類實例
PageContext對象是Jsp頁面本身的上下文,它提供唯一一組方法來管理具有不同作用域的屬性
Request對象提供對Http請求數(shù)據(jù)的訪問,同時還提供用于加入特定請求數(shù)據(jù)的上下文
Response對象允許直接訪問HttpServletResponse對象
Session對象可能是狀態(tài)管理上下文中使用最多的對話
jsp有哪些動作?作用分別是什么?
操作被用來以“名—值”隊的形式為其他標(biāo)簽提供附加信息
操作允許在請求是在現(xiàn)成的JSP頁面里包含靜態(tài)或者動態(tài)資源
操作允許將請求轉(zhuǎn)發(fā)到另一個JSP、servlet或靜態(tài)資源文件
標(biāo)簽用來在JSP頁面中創(chuàng)建一個JavaBean實例并指定他的名字以及作用范圍
此操作和setBean一起協(xié)作,用來設(shè)置JavaBean的屬性
操作是對操作的補(bǔ)充,用來訪問一個Bean的屬性
用來產(chǎn)生客戶端瀏覽器的特別標(biāo)簽,可以使用它來插入Applet和JavaBean
JSP中動態(tài)INCLUDE與靜態(tài)INCLUDE的區(qū)別?
如果文件僅僅是靜態(tài)文件,那么這種包含僅僅是把包含文件的內(nèi)容加到JSP文件中去,但這個被包含文件不會被JSP編譯器執(zhí)行。相反,如果這個被包含文件是動態(tài)的文件,那么他將被JSP編譯器執(zhí)行。如果是動態(tài)文件還可以用傳遞參數(shù)
兩種跳轉(zhuǎn)方式分別是什么?有什么區(qū)別?
操作允許在請求是在現(xiàn)成的JSP頁面里包含靜態(tài)或者動態(tài)資源
操作允許將請求轉(zhuǎn)發(fā)到另一個JSP、servlet或靜態(tài)資源文件
5.servlet運行的生命周期圖.
裝載ServletServlet類 Servlet初始化(調(diào)用init方法)實例對象被回收 提供服務(wù)(調(diào)用Service方法) 銷毀Servlet實例(調(diào)用destroy方法)
8.在程序里怎樣注冊servlet
displayChart
org.jfree.chart.servlet.DisplayChart
displayChart
/displayChart
[此文檔可自行編輯修改,如有侵權(quán)請告知刪除,感謝您的支持,我們會努力把內(nèi)容做得更好]
最新可編輯word文檔
鏈接地址:http://m.appdesigncorp.com/p-5392508.html