servlet


1、【單選題】
(單選題)在配置tomcat虛擬目錄時,需要打開哪個文件? ()
A. index.jsp
B.web.xml
C.server.xml
D.以上都不是
【正確答案】C
解析:作用類似於訪問某個設定的路徑時,根據虛擬路徑的配置去訪問一個絕對路徑下的項目
1.E盤根目錄下創建demo文件夾(E:\demo)。復制Tomcat目錄下的webapps\ROOT中的WEB-INFO文件夾到demo文件夾。
(里面帶有一個web.xml文件)
2.在tomcat\conf下server.xml中找到
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
</Host>
3.在頭標簽和尾標簽之間添加:<Context path="localhost后的路徑" docBase="項目的絕對路徑" ></Context>
4.打開Tomcat的conf中的web.xml 文件,在其中找到
<init-param>
<param-name>listings</param-name>
<param-value>false</param-value>
</init-param>
將false設成true保存,啟動Tomcat。訪問: http://localhost/localhost后的路徑

 

2、【單選題】
(單選題)完整的配置一個Servlet需要_____標簽
A.<webapp></webapp>
B.<servlet></servlet>和<servlet-mapping></servlet-mapping>
C.<servlet-name/>和<servlet-class>
D.<servlet-mapping>和<servlet-name>
【正確答案】B

 

3、【單選題】
(單選題)在J2EE中,對於HttpServlet類的描述,錯誤的是?
A.我們自己編寫的Servlet繼承了HttpServlet類,一定需覆蓋doPost或者doGet方法。
B.Httpservlet類擴展了GenericServlet類,實現了GenericServlet類的抽象方法。
C.Httpservlet類中處理客戶請求和響應時所使用的兩個接口是:HttpServletRequest和HttpServletResponse
D.我們自己編寫的servlet繼承了Httpservlet類,一般只需要覆蓋doPost或doGet方法,不必覆蓋servive()方法,因為一個service()方法會調用doPost或者doGet方法。
【正確答案】A


4、【單選題】
(單選題)在tomcat發布web應用myweb,定義類cn.tedu.Hello.java,Hello.class應該被放置在哪個目錄( ${CATALINA_HOME}即為tomcat安裝目錄)?
A.${CATALINA_HOME}/webapps/myweb/WEB-INF/classes/Hello.class
B.${CATALINA_HOME}/webapps/myweb/WEB-INF/classes/cn/tedu/Hello.class
C.${CATALINA_HOME}/webapps/myweb/WEB-INF/classes/cn.tedu.Hello.class
D.${CATALINA_HOME}/webapps/myweb/WEB-INF/classes/cn.tedu/Hello.class
【正確答案】B


5、(單選題)安裝tomcat成功后,要修改tomcat端口,要修改的文件是?
A.tomcat/bin/startup.bat文件
B.tomcat/conf/server.xml
C.tomcat/conf/web.xml
D.tomcat/bin/server.xml
【正確答案】B


6、【單選題】
(單選題)請求Servlet的時候,Servlet的對象由____?
A.服務器負責實例化
B.由開發人員在請求中實例化
C.Servlet會自動實例化
D.Servlet只加載,無需實例化
【正確答案】A


7、【單選題】
(單選題)寫入和讀取Cookie的代碼分別是_____。
A.request.addCookies()和response.getCookies();
B.response.addCookie()和request.getCookie();
C.response.addCookies()和request.getCookies();
D.response.addCookie()和request.getCookies();
【正確答案】D


8、【單選題】
(單選題)request.setAttribute("u", user) 其中user有一個 private String name; 屬性和一個方法:
public String getUsername() {
return this.name;
}
以下哪個選項能輸出這個它的name屬性值?
A.${ u.name}
B.${ user.name}
C.${ u.username}
D.${request.u.username }
【正確答案】C
解析 el 表達式會調用getUsername()函數, 表達式中需要用getUsername中的username(U改成小寫)


9、【單選題】
(單選題)在訪問Servlet時,在瀏覽器地址欄中輸入的路徑是在__地方配置的。
A.<servlet-name/>
B.<servlet-mapping/>
C.<uri-pattern/>
D.<url-pattern/>
【正確答案】D


10、【單選題】
(單選題)HttpServlet的子類要從HTTP請求中獲得請求參數,應該調用哪個方法?
A.調用HttpServletRequest對象的getAttribute()方法
B.調用ServletContext對象的getAttribute()方法
C.調用HttpServletRequest對象的getParameter()方法
D.調用HttpServletRequest對象的getHeader()方法
【正確答案】C


11、【單選題】
(單選題)在J2EE中,給定某Servlet的代碼如下,編譯運行該文件,以下陳述正確的是:
Public class Servlet1 extends HttpServlet{
Publicvoid init() throws ServletException{ }
Publicvoid service(HttpServletRequest request,HttpServletResponse response)
ThrowsServletException,IOException{
PrintWriter out = response.getWriter();
out.println(“hello!”);
}
}
A.編譯該文件時會提示缺少doGet()或者dopost()方法,編譯不能夠成功通過
B.編譯后,把Servlet1.class放在正確位置,運行該Servlet,在瀏覽器中會看到輸出文字:hello!
C.編譯后,把Servlet1.class放在正確位置,運行該Servlet,在瀏覽器中看不到任何輸出的文字
D.編譯后,把Servlet1.class放在正確位置,運行該Servlet,在瀏覽器中會看到運行期錯誤信息
【正確答案】B

12、【單選題】
(單選題)在ServletA 的doGet方法中的代碼片段,如下:
request.setAttribute("name","zhang");
response.sendRedirect("http://localhost:8080/servlet/MyServlt");
那么在 MyServlet 中可以使用____方法把屬性 name的值取出來。
A.String str = request.getAttribute("name");
B.String str = (String)request.getAttribute("name");
C.Object str = request.getAttribute("name");
D.無法取出來

【正確答案】D
解析:重定向無法共享request和response


13、【單選題】
(單選題)假設在helloapp應用中有一個hello.jsp,它的文件路徑如下:<CATALINA_HOME>/webapps/helloapp/hello/hello.jsp 在web.xml文件中沒有對hello.jsp作任何配置,那么瀏覽器端訪問hello.jsp的URL是什么?
A.http://localhost:8080/hello.jsp
B.http://localhost:8080/helloapp/hello.jsp
C.http://localhost:8080/helloapp/hello/hello.jsp
D.http://localhost:8080/hello
【正確答案】C


14、【單選題】
(單選題)Servlet中,HttpServletResponse的()方法用來把一個Http請求重定向到另外的URL。
A.sendURL()
B.redirectURL()
C.sendRedirect()
D.redirectResponse()
【正確答案】C


15、【多選題】
(多選題)response對象是對服務器的響應信息作出的封裝對象。其主要作用有?
A.可以向客戶端輸出信息
B.可以實現請求重定向
C.可以作為域對象實現資源共享
D.可以設置響應頭和狀態
【正確答案】A,B,D
解析:request和response中只有request能作為域對象實現資源共享(request.setAttribute)


16、【多選題】
(多選題)關於HttpSession的getAttibute()和setAttribute()方法,正確的說法是?
A.getAttribute()方法返回類型是String
B.getAttribute()方法返回類型是Object
C.setAttribute()方法保存數據時如果名字重復會拋出異常
D.setAttribute()方法保存數據時如果名字重復會覆蓋以前的數據
【正確答案】B,D
解析:
getAttribute()方法返回類型是Object(不是String類型)
setAttribute()方法保存數據時如果名字重復會覆蓋以前的數據


17、【多選題】
(多選題)關於請求轉發、請求重定向、定時刷新下列說法正確的是?
A.請求轉發是一次請求一次響應,地址欄地址不會發生變化
B.定時刷新可以實現在跳轉之前的這段時間輸出數據到客戶端瀏覽器
C.請求重定向和定時刷新的實現機制是相同的,屬於同一種資源跳轉
D.請求重定向和定時刷新是兩次請求兩次響應,並且地址欄地址會發生變化
【正確答案】A,B,D


18、【多選題】
(多選題)服務器通過字符流響應數據給客戶端瀏覽器,瀏覽器收到數據后出現亂碼, Servlet中doGet()方法代碼如下:
response.getWriter().write("中國");
而此時瀏覽器收到的數據是:"??"
根據上述描述判斷下面說法正確的是?
A.出現亂碼的原因是因為編解碼使用的碼表不一致造成的。
B.出現亂碼是因為客戶端瀏覽器查錯了碼表。
C.出現亂碼是因為服務器發送數據時查錯了碼表。
D.可以通過response.setContentType(“text\html,charset=utf-8”);來解決亂碼
【正確答案】A,C
解析:選C不知道為啥, 以后選擇考試題盡量不要選擇此題


19、【多選題】
(多選題)關於request和response下列說法中不正確的是?
A.javaweb開發是基於HTTP協議進行的,javaweb中使用request代表請求對象,response代表響應對象
B.request對象代表請求,response對象代表響應,這兩個對象都是由瀏覽器創建后發送給服務器的
C.HTTP協議只規定了瀏覽器和服務器之間如何通信,而request和response對象是由javaee規范規定的、由javaweb容器負責創建的。
D.HTTP協議是javaweb開發的基石,如response中提供的請求重定向的方法和request中提供的轉發和包含方法就是基於HTTP協議進行的
【正確答案】B,D
解析: response, request兩個對象由Tomcat容器創建。
轉發和重定向是基於javaEE規范(不是基於http協議的)


20、【多選題】
(多選題)關於下列描述錯誤的是__()
A.request對象的getSession()方法每次調用都創建一個新的session對象
B.request對象的getSession()方法用於創建一個新的或者獲取一個已存在的session對象
C.request對象的getSession(false)方法每次調用都創建一個新的session對象
D.request對象的getSession(false)方法用於獲取一個已存在的session, 如果沒有session, 將會返回null
【正確答案】A,C
解析:
request.getSession() 有session就不創建並返回,沒有session就創建並返回
request.getSession(true)和上邊相同
request.getSession(false)獲取已存在的session, 沒有就返回null

21、【多選題】
(多選題)下列說法正確的是?
A.請求轉發是服務器端技術,與瀏覽器沒有任何關系,瀏覽器並不知道獲得的響應消息是否是經過轉發得到的。
B.請求轉發的過程中轉發前寫入response中的實體內容數據會丟失掉,最終輸出的將是請求轉發過程中的最后一個節點資源的數據輸出。
C.請求轉發是兩次請求兩次響應
D.一個Servlet中可以轉發兩次
【正確答案】A,B
解析:
轉發前用response.getWriter().write()寫出數據, 轉發后再次用此函數寫出數據, 最終寫出的第二遍的數據
轉發是一次請求一次響應
一個servlet只能轉發一次(用eclipse測試過: 轉發兩次會出現500異常,提示response對象已提交)

22、【多選題】
(多選題)request的功能有哪些?
A.實現請求轉發和包含數據
B.保存會話中的數據
C.作為域對象使用
D.獲取Session對象
【正確答案】A,C,D
解析:request對象可以保存會話對象,不能說:可以保存會話中的數據


23、【多選題】
(多選題)有關Servlet的生命周期說法正確的有?
A.Servlet的生命周期由Servlet實例控制
B.init()方法在創建完Servlet實例后對, Servlet調用該方法進行初始化
C.service()方法處理客戶端發出的請求
D.destroy()方法在servlet銷毀時執行
【正確答案】C,D
解析:Tomcat容器調用init方法對servlet實例初始化(而不是servlet實例調用該方法)


24、【多選題】
(多選題)下面哪些是屬於JAVAEE規范中的技術?
A.XML
B.Html/css/js
C.JDBC
D.Servlet
【正確答案】A,C,D


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM