JavaWeb练习题(含答案)
不夠?再來點:JavaWeb復習題(含答案)
第1章網頁開發基礎
習題
一、填空題
1.HTML是英文【 】的縮寫。
2.標記用于定義HTML文檔所要顯示的內容,也稱為【 】。
3.在表格標記中用于設置是否顯示邊框的屬性是【 】。
4.引入CSS的方式有4種,分別為【 】、行內式(也稱為內聯樣式)、【 】和導入式。
5.W3C中將DOM標準分為3個不同的部分:【 】、【 】和【 】。
二、判斷題
1.在實際開發中,開發者只需將后臺數據展示在相應頁面即可,無需關心前臺界面中的JS代碼。( )
2.font-family屬性設置字體時, 中文字體需要加英文狀態下的引號,英文字體一般不需要加引號。( )
3.在文檔對象節點樹中,具有相同父節點的節點叫做“父節點”。( )
4.內嵌式是將CSS代碼集中寫在HTML文檔的<head>頭部標記中,并且用<style>標記定義。( )
5.在input控件中,當type值為text時,表示的是單行文本輸入框。( )
三、選擇題
1.分析下面的JavaScript代碼 ,經過運算后m的值為( )。
var x=11; var y=“number”; var m=x+y;
A: 11number
B: number
C: 11
D: 程序報錯
2.下列選項中,可以在JavaScript警告框中寫入 "Hello World"的是( )
A: alertBox=“Hello World”;
B: msgBox(“Hello World”);
C: alert(“Hello World”);
D: alertBox(“Hello World”);
3.下列選項中,哪個 HTML 元素中可以放置 Javascript 代碼?( )
4.下列選項中,用來定義下拉列表的是( )。
A: <input/> B: <textarea></textarea> C: <select></select> D: <form>5.下列選項中,不是<img />標記屬性的是( )
A: src
B: alt
C: width
D: href
答案
一、填空題
1.Hyper Text Markup Language
2.主體標記
3.border
4.鏈入式;內嵌式
5.核心DOM、XML DOM和HTML DOM
二、判斷題
1.錯
2.對
3.錯
4.對
5.對
三、選擇題
1.A
2.C
3.A
4.C
5.D
第2章Java Web概述
習題
一、填空題
1.XML稱為可擴展的標記性語言,格式良好的XML有且只能有【 】個根元素。
2.Tomcat服務器的默認端口號是【 】。
3.定義元素的屬性時,有四種設置說明:#REQUIRED ,#IMPLIED,【 】和默認值。
4.在XML文檔中,元素一般是由開始標記,屬性,【 】和結束標記構成。
5.在HTTP的8種請求方式中,最常用的是【 】和【 】。
二、判斷題
1.當訪問一個Web應用程序時,如果沒有指定資源名稱,則會訪問默認的頁面。( )
2.采取在servler.xml文件中配置虛擬目錄,每次修改server.xml文件后,都需要重啟服務器,否則修改的配置將不會生效。( )
3.一個web應用下子目錄的命名沒有特殊規定,可以隨意命名。( )
4.屬性是對標記進一步的描述和說明,一個標記只能有一個屬性。( )
5.XML文檔中如果保存有中文字符,那么保存的文件編碼格式一定要與文檔聲明的encoding的編碼取值相同,否則將會產生中文亂碼問題。( )
三、選擇題
1.下列選項中,可以成功修改Tomcat端口號為80的是( )
A:
B:
C:
D:
2.下面選項中,哪個頭字段用于告訴瀏覽器自動刷新頁面的時間?( )
A: Server
B: Accept-Location
C: Refresh
D: Accept- Refresh
3.下面選項中,表示服務器錯誤的狀態碼是( )
A: 100
B: 404
C: 304
D: 500
4.下面選項中,哪個頭字段用于告知服務器,客戶端所使用的字符集?( )
A: Accept-Charset
B: Accept
C: Accept-Encoding
D: Accept-Language
5.下列關于XML的描述中,正確的是( )
A: 所有的XML元素都必須是小寫的
B: 所有XML元素都必須正確地關閉
C: 所有XML文檔都必須有DTD
D: 以上說法都正確
答案
一、填空題
1.1或一
2.8080
3.#FIXED
4.元素內容
5.GET;POST
二、判斷題
1.對
2.對
3.錯
4.錯
5.對
三、選擇題
1.C
2.C
3.D
4.A
5.B
第3章Servlet基礎
習題
一、填空題
1.在Servlet開發中,實現了多個Servlet之間數據共享的對象是【 】。
2.在Servlet容器啟動每一個web應用時,就會創建一個唯一的ServletContext對象,該對象和web應用具有相同的【 】。
3.ServletConfig對象是由【 】創建出來的。
4.在HttpServletResponse接口中,實現請求重定向的方法是【 】。
5.用于監聽ServletRequest對象生命周期的接口是【 】。
二、判斷題
1.ServletConfig對象可以實現多個Servlet之間的數據共享。( )
2.一個元素下配置多個子元素能實現Servlet的多重映射。( )
3.一個Servlet可以映射多個虛擬路徑。( )
4.使用Eclipse工具可以自動編譯Servlet并生成該Servlet的相應配置信息。( )
5.在一個web.xml中只能配置一個監聽器。( )
三、選擇題
1.下面選項中, 哪個方法用于返回映射到某個資源文件的URL對象( )
A: getRealPath(String path)
B: getResource(String path)
C: getResourcePaths(String path)
D: getResourceAsStream(String path)
2.下面選項中, 用于根據虛擬路徑得到文件的真實路徑的方法是( )
A: String getRealPath(String path)
B: URL getResource(String path)
C: Set getResourcePaths(String path)
D: InputStream getResourceAsStream(String path)
3.下面選項中, 用于設置ServletContext的域屬性的方法是( )
A: setAttribute(String name,String obj)
B: setParameter(String name,Object obj)
C: setAttribute(String name,Object obj)
D: setParameter (String name,Object obj)
4.下列選項中,哪個是web.xml中配置初始化參數的標簽?( )
5.Eclipse工具開發Servlet會自動將src目錄下的文件編譯成class文件存放到哪個目錄下( )
A: class
B: classes
C: lib
D: conf
答案
一、填空題
1.ServletContext
2.生命周期
3.Web容器(或Tomcat)
4.redirect()
5.ServletRequestListener
二、判斷題
1.錯
2.對
3.對
4.對
5.錯
三、選擇題
1.B
2.A
3.C
4.B
5.B
第4章請求和響應
習題
一、填空題
1.HttpServletResponse接口的sendRedirect()方法,該方法的實質是生成【 】響應碼和Location響應頭,并發送給客戶端。
2.所謂請求重定向,指的是Web服務器接受到客戶端的請求后,又再次引導【 】重新發送請求,指定了一個新的資源路徑。
3.當傳輸文本時,如果編碼和解碼使用的碼表不一致,就會導致【 】問題。
4.response對象的getOutputStream()和getWriter()方法都可以發送響應消息體,但兩者是【 】的,同時使用將產生IllegalStateException異常。
5.將字符轉換成字節的過程稱為編碼,將字節轉換成字符的過程稱為【 】。
二、判斷題
1.轉發的forward()方法,必須在響應提交給客戶端之后被調用,否則將拋出IllegalStateException異常。( )
2.通過請求轉發來實現目標資源的訪問時,由于客戶端發送了兩次請求,所以瀏覽器地址欄發生改變。( )
3.HttpServletRequest接口中的setCharacterEncoding()方法用于設置request對象獲取請求參數的解碼方式,它對于get與post請求都有效。( )
4.使用getIntHeader(String name) 方法時,如果獲取到的頭字段的值不能轉為int類型,將發生NumberFormatException異常。( )
5.如果沒有設置Content-Type頭字段,那么setCharacterEncoding()方法設置的字符集編碼不會出現在HTTP消息的響應頭中。( )
三、選擇題
1.如果想要將頁面傳遞來的用戶名username為張三的數據存放在Requset對象中,以下哪種方式可以實現( )
A: String username=request.getParameter(“張三”);
B: String username=(String) request.getAttribute(“張三”);
C: request.setAttribute(“username”, “張三”);
D: request.removeAttribute(“張三”);
2.RequestDispatcher接口中,用于將請求從一個Servlet傳遞給另外的一個Web資源的方法是( )
A: forward(ServletResponse response,ServletRequest request)
B: include(ServletRequest request,ServletResponse response)
C: forward(ServletRequest request,ServletResponse response)
D: include(ServletResponse response,ServletRequest request)
3.使用request實現轉發時,下列哪個路徑的寫法是正確的?()
A: 只能是相對路徑
B: 只能是絕對路徑
C: 相對路徑和絕對路徑都可以
D: 相對路徑可以,但絕對路徑不可以
4.通過配置Tomcat來解決GET請求參數的亂碼問題,可以在server.xml文件中的Connector節點下添加的屬性是( )
A: useBodyEncodingForURI=”false”
B: useBodyEncoding=”true”
C: useBodyEncodingForURI=”true”
D: useBodyEncoding=”false”
5.在HttpServletRequest接口中,用于返回請求消息的實體部分的字符集編碼的方法是( )
A: getCharacter ()
B: getCharacterEncoding()
C: getEncoding()
D: getHeader(String name)
答案
一、填空題
1.302
2.客戶端
3.亂碼
4.互斥
5.解碼
二、判斷題
1.錯
2.錯
3.錯
4.對
5.對
三、選擇題
1.C
2.C
3.C
4.C
5.B
第5章會話及會話技術
習題
一、填空題
1.Tomcat容器中會話的有效時間可以在【 】文件中設置,默認會話過期時間為30分鐘。
2.使用Session技術時,實質上是服務器與客戶端,通過set-cookie響應頭及cookie請求頭,傳遞【 】屬性來識別不同的客戶端。
3.Web應用中的會話指的是一個客戶端(瀏覽器)與【 】之間連續發生的一系列請求和響應過程。
4.Session是借助【 】來傳遞ID屬性的。
5.使用Cookie類中的【 】方法會通知瀏覽器立即刪除這個Cookie信息。
二、判斷題
1.Tomcat容器中如果將元素中的時間值設置成0或一個負數,則表示會話永不超時。( )
2.Session是一種將會話數據保存到服務器端的技術,需要借助Cookie技術來實現。( )
3.Cookie的domain屬性是用來指定瀏覽器訪問的域,設置domain屬性時嚴格區分大小寫。( )
4.Cookie的path屬性設置后,只對當前訪問路徑所屬的目錄有效。( )
5.一次會話過程中,只允許客戶端與服務器進行一次請求與響應過程。( )
三、選擇題
1.閱讀下面代碼:
Book book = BookDB.getBook(id);
HttpSession session = req.getSession();
List cart = (List) session.getAttribute(“cart”);
if (cart == null) {
cart = new ArrayList();
session.setAttribute(“cart”, cart);
}
cart.add(book);
下面選項中,哪個是對上述代碼功能的正確描述?( )
A: 實現不同用戶的不同瀏覽器之間共享同一個購物車中的數據
B: 實現不同的應用程序之間共享同一個購物車中的數據
C: 實現放在不同web容器中的不同應用程序共享同一個購物車中的數據
D: 實現了每個不同的瀏覽器都有自己對應的一個購物車,來實現數據共享
2.Tomcat服務器的默認會話超時時間是( )
A: 30秒
B: 30分鐘
C: 30毫秒
D: 30小時
3.下面選項中,用于強制使Session對象無效的方法是( )
A: request. invalidate ();
B: session. validate ();
C: response. invalidate ();
D: session. invalidate ();
4.下面選項中,當存在Session對象直接返回,否則返回null的方法是( )
A: request.getSession();
B: request.getSession(true);
C: request.getSession(false);
D: response.getSession();
5.下列選項中,能夠用于獲取客戶端所有cookie對象的方法是( )
A: List cookies = request.getCookies();
B: Cookie[] cookies = request.getCookies();
C: List cookies = response.getCookies();
D: Cookie[] cookies = response.getCookies();
答案
一、填空題
1.web.xml
2.ID
3.Web服務器(或服務器)
4.Cookie技術
5.setMaxAge(0)
二、判斷題
1.對
2.對
3.錯
4.錯
5.對
三、選擇題
1.D
2.B
3.D
4.C
5.B
第6章JSP技術
習題
一、填空題
1.JSP頁面中out對象是javax.servlet.jsp.JspWriter類的實例對象,它的作用與ServletResponse.getWriter()方法返回的PrintWriter對象非常相似,都是用來向【 】發送文本形式的實體內容。不同的是,out對象的類型為【 】,它相當于一種帶緩存功能的PrintWriter。
2.在JSP頁面中,經常需要處理一些異常信息,這時,可以通過【 】對象來實現。
3.除了RequestDispatcher接口的forward()方法可以實現轉發外,還可以通過JSP的【 】標簽來實現轉發。
4.page指令的buffer屬性指定緩存的大小,只能取值為none或指定數據大小,但它要有效,還需要設置【 】的值為true。
5.當用戶第一次訪問JSP頁面時,該頁面都會被JspServlet翻譯成一個Servlet源文件,然后將源文件編譯為后綴名為【 】的文件。
二、判斷題
1.JSP隱式對象out可以通過response.getWriter()方式獲取,然后再通過println()或者write()方法向頁面發送文本內容。( )
2.EL表達式中的隱式對象與JSP中的隱式對象除了pageContext對象是它們共有的,其它隱式對象則毫不相關。( )
3.Include指令用于靜態包含一個文件,它的file屬性只能取相對路徑。( )
4.page指令的屬性中,所有的屬性都只能出現一次,否則會編譯失敗。( )
5.JSP文件與html文件有所不同,它不可以直接在瀏覽器中運行。( )
三、選擇題
1.閱讀下面代碼片段:
3.在JSP中,exception隱式對象所對應的類是( )
A: java.lang.Exception
B: java.lang.Throwable
C: java.lang.ExceptionThrowable
D: java.lang. ThrowableException
4.下列是page指令中的一些屬性,其中,用于告知客戶端瀏覽器采用什么文檔類型的屬性是( )
A: session
B: contentType
C: content
D: isThreadSafe
5.閱讀下列JSP代碼片斷:
<% int x=5; %>
<%! private int m(int a){ return a+1;} %>
<% x=3; %>
x=<%=x%>,<%=m(x)%>
其運行結果是( )
A: x=3,6
B: x=3,4
C: x=5,4
D: 編譯錯誤
答案
一、填空題
1.客戶端;JspWriter
2.exception
3.<jsp:forward>
4.autoFlush
5…class
二、判斷題
1.錯
2.對
3.對
4.錯
5.對
三、選擇題
1.D
2.C
3.A
4.B
5.B
第7章EL表達式和JSTL
習題
一、填空題
1.JSTL標簽庫是由【 】個不同功能的標簽庫共同組成。
2.EL表達式的【 】隱式對象用于獲取客戶端的Cookie信息。
3.EL的【 】隱式對象,代表application域中用于保存屬性的Map對象。
4.在JavaBean中,如果一個屬性只有setter方法,則該屬性為【 】。
5.【 】是一個【 】標簽庫,它包含了實現Web應用中通用操作的標簽。
二、判斷題
1.EL表達式的initParam隱式對象可獲取web.xml文件中配置的Servlet信息。( )
2.JSTL標簽庫中的Core標簽庫的URI為http://java.sun.com/jsp /core。( )
3.EL表達式的cook隱式對象用于獲取客戶端的Cookie信息。( )
4.EL表達式中的隱式對象與JSP中的隱式對象除了pageContext對象是它們共有的,其它隱式對象則毫不相關。( )
5.EL表達式中條件運算符用于執行某種條件判斷,它類似于Java語言中的if-else語句。( )
三、選擇題
1.在c_if.jsp有如下部分代碼:
<c:if test=“true” >
true
</c:if>
<c:else test=“false” >
false
</c:else>
對于上述代碼片段說法正確的是( )
A: 該頁面代碼部署啟動時,控制臺會報錯
B: 在該頁面會出現編譯錯誤,并有紅叉提示
C: 訪問該頁面會出現結果:true false
D: 訪問該頁面時,瀏覽器沒有任何信息顯示
2.閱讀下面代碼片段:
當使用瀏覽器訪問c_out.jsp時會什么結果( )
A: userName1屬性的值為:unknown userName2屬性的值為: username2
B: userName1屬性的值為:username1 userName2屬性的值為: username2
C: userName1屬性的值為: null userName2屬性的值為: null
D: userName1屬性的值為:username1 userName2屬性的值為: unknown
3.下面隱式對象中,用于獲取請求頭字段的某個值的是( )
A: header
B: headerValue
C: headerValues
D: headerScope
4.已知JSP頁面中存在如下代碼:
<% session.setAttribute(“pageContext”, “itcast”); %>
${pageContext}
則以下說法,正確的是( )
A: 將出現語法錯誤,因為pageContext是保留字
B: 運行時存在異常
C: 不出現異常,輸出null
D: 不出現異常,輸出pageContext對象
5.下面選項中,與request.getAttribute(“p”);等效的EL表達式是( )
A: $<request.p>
B: $[requestScope.p]
C: $(request.p)
D: ${requestScope.p}
答案
一、填空題
1.5
2.cookie
3.applicationScope
4.只寫屬性
5.Core;核心
二、判斷題
1.錯
2.錯
3.錯
4.對
5.對
三、選擇題
1.C
2.B
3.A
4.D
5.D
第8章Servlet高級
習題
一、填空題
1.為了實現統計網站當前在線人數,當用戶登錄成功將信息保存到session域中時,可以使用【 】監聽器在后臺工作,以計算當前在線人數。
2.一個web.xml中可以配置【 】個監聽器。
3.用于監聽HttpSession對象生命周期的接口是【 】。
4.產生事件的對象稱為【 】。
5.元素< dispatcher >的默認取值是【 】。
二、判斷題
1.實現ServletRequestAttributeListener接口的監聽器類,可以用于監聽ServletRequest對象中的屬性變更。( )
2.<session-timeout>標簽指定的超時必須為一個整數,如果這個整數是為0或負整數,則session永遠不會超時。( )
3.在web.xml中,一個 <listener>元素中可以出現多個< listener-class>子元素。( )
4.Servlet事件監聽器根據監聽事件的不同,可以分為兩類。( )
5.獲取FilterConfig對象,可以通過手動調用它的構造方法,從而進行它的實例化。( )
三、選擇題
1.下面選項中,關于統計網站當前在線人數的計數器count變量應該保存的域范圍是( )
A: request
B: session
C: application
D: page
2.已知web.xml中存在如下配置:
下面的說法,正確的是( )
A: 在空閑狀態下,2秒后將導致session對象銷毀
B: 在空閑狀態下,2分鐘后將導致session對象銷毀
C: 在空閑狀態下,2毫秒后將導致session對象銷毀
D: 在空閑狀態下,2小時后將導致session對象銷毀
3.下面選項中,能夠返回Filter設置的所有初始化參數名稱的方法是( )
A: getServletContext()
B: getFilterName()
C: getInitParameter(String name)
D: getInitParameterNames()
4.關于Filter鏈的執行順序,是由web.xml文件中的哪個元素決定的( )
A: 元素順序決定
B: 元素順序決定
C: 元素順序決定
D: 由過濾器類名的順序決定
5.下列選項中,哪個元素可以指定Filter攔截的資源被容器調用的方式( )
A:
B:
C:
D:
答案
一、填空題
1.HttpSessionListener
2.零或多
3.HttpSessionListener
4.事件源
5.REQUEST
二、判斷題
1.對
2.對
3.錯
4.錯
5.錯
三、選擇題
1.C
2.B
3.D
4.B
5.D
第9章JDBC
習題
一、填空題
1.ResultSet接口中的常量CONCUR_READ_ONLY,所代表的含義是【 】。
2.ResultSet接口中,能將游標移動到此 ResultSet 對象的最后一行的方法是【 】。
3.PreparedStatement是Statement的子接口,用于執行【 】的SQL語句。
4.Statement接口的executeUpdate(String sql)方法用于執行SQL中的insert、【 】和delete語句。
5.JDBC常用API 中,【 】類用于加載JDBC驅動并且創建與數據庫的連接。
二、判斷題
1.對于相同的SQL語句,Statement對象只會對其編譯執行一次。( )
2.使用DriverManager.registerDriver進行驅動注冊時,數據庫驅動會被注冊2次。( )
3.ResultSet接口表示select查詢語句得到的結果集,該結果集封裝在一個邏輯表格中。( )
4.Statement接口的executeUpdate(String sql)返回值是int,它表示數據庫中受該SQL語句影響的記錄的數目。( )
5.JDBC的全稱是Java數據庫連接,它是一套用于執行HTML語句的Java API。( )
三、選擇題
1.下列選項,可用于存儲結果集的對象是( )
A: ResultSet
B: Connection
C: Statement
D: PreparedStatement
2.下面選項中,能夠將游標從當前位置向下移一行的方法是( )
A: next()
B: absolute(introw)
C: previous()
D: last()
3.下面關于executeQuery(String sql)方法,說法正確的是( )
A: 可以執行insert語句
B: 可以執行update語句
C: 可以執行select語句
D: 可以執行delete語句
4.下面Statement接口的方法中,用于執行各種SQL語句的是( )
A: executeUpdate(Stringsql)
B: executeQuery(Stringsql)
C: execute(Stringsql)
D: executeDelete(Stringsql)
5.下面選項中,用于將參數化的SQL語句發送到數據庫的方法是( )
A: prepareCall(Stringsql)
B: prepareStatement(Stringsql)
C: registerDriver(Driverdriver)
D: createStatement()
答案
一、填空題
1.以只讀形式打開結果集
2.last()
3.預編譯
4.update
5.DriverManager
二、判斷題
1.錯
2.對
3.對
4.對
5.錯
三、選擇題
1.A
2.A
3.C
4.C
5.B
第10章數據庫連接池和DBUtils工具
習題
一、填空題
1.DBCP的全稱是【 】。
2.JDBC提供了【 】接口,它負責與數據庫建立連接,提供統一的標準數據源。
3.單獨使用DBCP數據源時,需要在應用程序中導入【 】和【 】兩個JAR包。
4.數據源對象的創建方式有兩種,一種是通過【 】直接創建數據源對象,另一種是通過【 】創建數據源對象。
5.C3P0的核心類是【 】。
二、判斷題
1.ResultSet接口用于處理ResultSet結果集,它可以將結果集中的數據轉為不同的形式。( )
2.在ResultSetHandler接口中,提供了一個方法handle (java.sql.ResultSet rs),可以通過自定義一個實現ResultSetHandler接口的類,然后通過重寫handle()方法,實現結果集的處理。( )
3.C3P0配置文件中結點代表自定義配置,一個配置文件中可以有零個或多個的自定義配置。( )
4.我們可以使用BasicDataSourceFactory工廠類讀取配置文件,創建數據源對象,然后獲取數據庫連接對象。( )
5.DBCP是數據庫連接池(DataBase Connection Pool)的簡稱,是Sun公司下的開源連接池實現,也是Tomcat服務器使用的連接池組件。( )
三、選擇題
1.已知,存在 QueryRunner對象 runner , SQL語句:String sql = “select * from user where id=?”;下面操作中,能實現查詢指定記錄的選項是( )
A: User user=(User)runner.query(sql, new BeanListHandler(User.class), new Object[]{id});
B: User user=(User)runner.query(sql, new BeanHandler(User.class));
C: User user=(User)runner.query(sql, new BeanListHandler(User.class), id);
D: User user=(User)runner.query(sql, new BeanHandler(User.class), new Object[]{id});
2.下面關于自定義ResultSetHandler接口實現類的描述,正確的是( )
A: 通過重寫handle()方法,從而實現結果集的處理
B: 通過重寫update()方法,實現結果集的處理
C: 通過重寫query()方法,實現結果集的處理
D: 通過重寫delete()方法,實現結果集的處理
3.下面選項中,關于DBUtils類中用于裝載并注冊JDBC驅動程序的方法是( )
A: close()方法
B: closeQuietly()方法
C: commitAndCloseQuietly()方法
D: loadDriver()方法
4.下面選項中,屬于QueryRunner類的query()方法可執行的操作語句是( )
A: SELECT語句
B: DELETE語句
C: UPDATE語句
D: INSERT語句
5.關于DriverManager和DataSource接口中getConnection()方法的區別,解釋正確的是( )
A: 前者需要close(),而后者不需要close()
B: 前者的close()是釋放Connection,而后者的close()只會把Connection歸還給連接池
C: 兩者沒有區別
D: DataSource的getConnection()每次都會創建新的數據庫鏈接
答案
一、填空題
1.數據庫連接池
2.DataSource
3.commons-dbcp.jar;commons-pool.jar
4.BasicDataSource類;讀取配置文件
5.ComboPooledDataSource
二、判斷題
1.錯
2.對
3.對
4.對
5.錯
三、選擇題
1.D
2.A
3.D
4.A
5.B
第11章JSP開發模型
習題
一、填空題
1.為了更方便地使用JSP技術,Sun公司為JSP技術提供了兩種開發模型:【 】和【 】。
2.JSP Model1采用【 】的技術,將頁面顯示和業務邏輯分開。
3.JSP Model2模型就是【 】設計模式,其中控制器的角色是由Servlet實現,視圖的角色是由JSP頁面實現,模型的角色是由JavaBean實現。
4.【 】負責管理應用程序的業務數據、定義訪問控制以及修改這些數據的業務規則。
5.控制器(Controller)是負責應用程序中處理【 】的部分。
二、判斷題
1.JSP Model1架構模型采用JSP+Servlet+JavaBean的技術,實際上它就是就是MVC(模型Model-視圖View-控制器Controller)設計模式。( )
2.在JSP Model1模型中,封裝數據和處理數據的業務邏輯交給了JavaBean組件,JSP只負責接收用戶請求和調用JavaBean組件來響應用戶的請求。( )
3.在JSP Model2模型中,控制器的角色是由Servlet實現,視圖的角色是由JSP頁面實現。( )
4.MVC設計模式,是一種軟件設計模式,它提供了一種按功能對軟件進行模塊劃分的方法。( )
5.控制器負責管理應用程序的業務數據、定義訪問控制以及修改這些數據的業務規則。( )
三、選擇題
1.JSP Model2開發的系統中,實現視圖的是( )
A: JSP
B: HTML
C: JavaBean
D: Servlet
2.MVC模式中用于負責與用戶交互并展示模型中數據的模塊是( )
A: 模型(Model)
B: 表示層(View)
C: 視圖(View)
D: 控制器(Controller)
3.下列選項中,哪個是MVC設計模式中的模型?( )
A: JSP
B: Servlet
C: Action
D: JavaBean
4.下面關于MVC設計模式的特點描述中,錯誤的是( )
A: 有利于開發中的分工
B: 使程序結構的耦合性增強
C: 有利于組件的重用
D: MVC設計模式是當前主流的設計模式之一
5.在JSP Model2模型中,接收瀏覽器請求的是( )
A: JSP
B: JS
C: Servlet
D: JavaBean
答案
一、填空題
1.JSP Model1;JSP Model2
2.JSP+JavaBean
3.MVC
4.模型(Model)
5.用戶交互
二、判斷題
1.錯
2.對
3.對
4.對
5.錯
三、選擇題
1.A
2.C
3.D
4.B
5.C
第12章文件上傳和下載
習題
一、填空題
1.如果下載的資源文件名為中文時,可以使用【 】類來解決下載文件所產生亂碼問題。
2.文件下載時,需指定的兩個響應消息頭是【 】和Content-Type。
3.ServletFileUpload類的parseRequest()方法用于解析出FORM表單中的每個字段的數據,并且返回值是【 】類型。
4.DiskFileItemFactory類用于將請求消息實體中的每一個文件封裝成單獨的【 】對象。
5.文件上傳時form表單的enctype屬性取值是【 】。
二、判斷題
1.使用URLEncoder類中的decode()方法,可成功解決文件下載過程中的亂碼問題。( )
2.為了防止上傳文件名重復,在上傳文件的名稱前面可添加UUID前綴。( )
3.ServletFileUpload類的isMultipartContent()方法是一個靜態方法,不用創建ServletFileUpload類的實例對象即可被調用。( )
4.設置所有上傳文件的總大小的方法是setSizeMax()。( )
5.FileItem類的getContentType ()方法獲取普通表單字段將拋出異常。( )
三、選擇題
1.文件下載時,用于設定實體內容的MIME類型的響應頭是( )
A: Content-Disposition
B: Content-Type
C: ContentEncoding
D: ContentAttachment
2.下面方法,用于判斷請求消息中的內容是否是“multipart/form-data”類型的是( )
A: isMultipartData()
B: isMultipartFormData()
C: isMultipartContent()
D: isMultipartDataContent()
3.下面用于將請求消息實體中的文件封裝成FileItem對象的是( )
A: DiskFileFactory類
B: ItemFactory類
C: DiskFileItemFactory類
D: FileItemFactory類
4.下面用于讀取上傳文件類型的方法是( )
A: getName()
B: getType()
C: getContentType()
D: getString()
5.關于Commons-FileUpload組件內部所使用的技術是( )
A: Servlet
B: JavaBean
C: EJB
D: Struts2
答案
一、填空題
1.URLEncoder
2.Content-Disposition
3.List
4.FileItem
5.multipart/form-data
二、判斷題
1.錯
2.對
3.對
4.對
5.錯
三、選擇題
1.A
2.C
3.C
4.C
5.A
總結
以上是生活随笔為你收集整理的JavaWeb练习题(含答案)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: MySQL事务的4种隔离级别
- 下一篇: 如何使用 IntelliJ IDEA(2