Servlet題庫


一、    填空題

  1. Servlet中使用Session對象的步驟為:調用  HttpServletRequest.getSession()  得到Session對象,查看Session對象,在會話中保存數據  
  2. http全稱是___HyperText Transfer Protocol_____
  3. 用戶可以有多種方式請求Servlet,如  瀏覽器直接調用頁面form中提交調用   、  超鏈接調用   Servlet調用  等。
  4. out對象的 _out.flush()_方法,功能是輸出緩沖的內容。
  5. response對象的_ sendRedirect(URL url)__方法可以將當前客戶端的請求轉到其他頁面去。表單的提交方法包括__get__和___post__方法。
    1. response.setHeader(“Refresh”, “5”)的含義是指 頁面刷新時間為   5秒   _。
  6. 表單標記中的__action___屬性用於指定處理表單數據程序url的地址。
  7. 使用cookie的基本步驟為:創建cookie對象,設置cookie對象的有效時間 ,傳送cookie對象 讀取cookie對象  
  8. Servlet中使用Session對象的步驟為:  調用  HttpServletRequest.getSession()  得到Session對象,查看Session對象,在會話中保存數據。    
  9. 在Servlet中,主要使用HttpServletResponse類的重定向方法  sendRedirect()   方法實現重定向,以及使用RequestDispatcher類的轉發方法   forward()    方法實現轉發功能。
  10. javax.servlet.Servlet接口定義了三個用於Servlet生命周期的方法,它們是  init() service()  destroy() 
  11. Servlet中使用Session對象的步驟為:  調用  HttpServletRequest.getSession()  得到Session對象,查看Session對象,在會話中保存數據。             
  12. Servlet運行於  服務器  端,與處於客戶端的___ Applet  ___相對應。
  13. 當Server關閉時,_  Servlet __就被銷毀。
  14. 使用Servlet處理表單提交時,兩個最重要的方法是_ doGet() _和_doPost()  
  15. Serlvet接口只定義了一個服務方法就是_  service()  _。
  16. MVC是三層開發結構,這三個字母按順序分別代表_ model__、__view  __controller __。
  17. Filter接口中最主要的方法是  doFilter 方法。
  18. 實現Filter接口的類需要重寫doFilter方法、init方法、destroy方法。
  19. ServletContext 被創建時的監聽類需要實現  ServletContextListener接口。
  20. 配置事件監聽類的配置文件是  <listener><listener-class>監聽類路徑</listenr-class></listener>______
    1.   url-pattern配置方式都有那些:_____ /s/**.do
  21. "/"的問題。在瀏覽器發請求時它代表什么含義__代表服務器根目錄__,_服務器內部跳轉時代表什么含義___代表項目根目錄_____
  22. 下面代碼有什么問題,請指出:resp.setContentType("text/html,charset=gbk");

_______中間應該是;而不是,_____

 

二、    選擇題

1.

對於B/S架構的工作流程,以下說法正確的是( A )(選擇一項)

 

 

 

 

A.

瀏覽器接受用戶的輸入-->瀏覽器向服務器端發送請求-->服務器端數據處理-->響應數據至客戶端

 

B.

發送響應-->瀏覽器接受用戶的輸入-->瀏覽器向服務器端發送請求-->服務器端數據處理

 

C.

發送響應-->瀏覽器接受用戶的輸入-->服務器端數據處理-->瀏覽器向服務器端發送請求

 

D.

瀏覽器接受用戶的輸入-->發送響應-->服務器端數據處理-->瀏覽器向服務器端發送請求

 

2.

關於動態網頁的特點,以下說法正確的是( D )(選擇一項)

 

 

 

A.

交互性

 

B.

自動更新

 

C.

隨機性

 

D.

以上說法均正確

 

3.

如果做動態網站開發,以下( A )可以作為服務器端腳本語言(選擇一項)

 

 

 

 

A.

Java

 

B.

Jsp

 

C.

Javascript

 

D.

Html

 

4.

關於Tomcat服務器的說法中正確的是( AC )(選擇二項)

 

 

 

 

A.

tomcat出自於apache,可以為web應用程序提供運行環境

 

B.

使用tomcat需要支付費用,否則不允許授權使用

 

C.

tomcat是一款開源服務器,性能優良

 

D.

 以上全正確

 

5.

在WEB項目的目錄結構中,web.xml文件位於( C )中(選擇一項)

 

 

 

 

A.

Src

 

B.

META-INF

 

C.

WEB-INF

 

D.

WebRoot

 

6.

在Servlet生命周期中,對應服務階段的方法是( C )(選擇一項)

 

 

 

 

A.

init()

 

B.

destroy()

 

C.

service()

 

D.

initial()

 

7.

在web編程中,對於cookie的作用說法正確的有( A )(選擇一項)

 

 

 

 

A.

為了識別不同的用戶信息

 

B.

為了簡化程序開發

 

C.

為了提高程序執行速度

 

D.

以上說法都不對

 

 

 

8.

對於ServletRequest接口的getAttribute()方法,說法正確的是( A )(選擇一項)

 

 

 

 

A.

獲取指定名稱的屬性值

 

B.

設置指定屬性的值

 

C.

刪除指定屬性的值

 

D.

以上都不對

 

9.

<servlet>

         <servlet-name>testServlet</servlet-name>

         <servlet-class>com.accp.servlet.TestServlet</servlet-class>

</servlet>

對於以上代碼片段,說法正確的是( AB )(選擇二項)

 

 

 

 

A.

配置了邏輯名為testServlet的Servlet組件

 

B.

其對於的類的路徑是:com.accp.servlet.TestServlet

 

C.

客戶端可以通過testServlet訪問

 

D.

以上說法都不對

 

10.

在java Web應用開發中,Servlet程序需要在( B )文件中配置。(選擇一項)

 

 

 

 

A.

Jsp

 

B.

web.xml

 

C.

struts.xml

 

D.

servlet.xml

 

11.

Java EE,HttpServletResponse( B )方法用於一個HTTP請求重定向到另一個資源。選擇一項

 

 

 

 

A.

sendURL()

 

B.

sendRedirect()

 

C.

forward()

 

D.

redirectURL()

 

12.

以下哪種格式是正確的URL( A )(選擇一項)

 

 

 

 

A.

http://localhost:8080/news/index.jsp>

 

B.

http://localhost/8080/news/index.jsp>

 

C.

http://localhost/8080:news/index.jsp>

 

D.

http:localhost://8080/news/index.jsp

 

13.

以下代碼中可以正確設置客戶端請求編碼為UTF-8 的是( A )(選擇一項)

 

 

 

A.

request.setCharacterEncoding("UTF-8")

 

B.

request.setCharset("UTF-8")

 

C.

request.setContentType("UTF-8")

 

D.

request.setEncoding("UTF-8")

 

14.

通過response的()方法可以設置響應所采用的字符編碼類型。(選擇一項)

 

 

 

 

A.

setCharacterEncoding()

 

B.

setCharset()

 

C.

setEncoding()

 

D.

setContentType()

 

15.

在部署帶有Servlet的Java Web程序時,(  D  )不是必需的。(選擇一項)

 

 

 

A.

web.xml文件

 

B.

WEB-INF文件夾

 

C.

classes文件夾

 

D.

csses文件夾

 

16.

 對於servlet在程序中的作用,以下說法正確的是( AB )(選擇二項)

 

 

 

 

A.

分離業務邏輯代碼與表現層代碼

 

B.

讓程序執行流程更加清晰

 

C.

加快了程序訪問速度

 

D.

大大減少了編碼工作量

 

17.

在WEB應用程序開發中,有時會出現Tomcat端口號已經被占用的情況,為此我們需要修改配置文件,下列選項中修改正確的是( B )(選擇一項)

 

 

 

 

A.

在tomcat目錄\bin文件夾\server.xml文件中,修改 Connection的port

 

B.

在tomcat目錄\conf文件夾\server.xml文件中,修改 Connector的port

 

C.

在tomcat目錄\bin文件夾\server.xml文件中,修改 Connector的port

 

D.

在tomcat目錄\conf文件夾\server.xml文件中,修改 Connection的port

 

18.

如果要把一個accp字符串信息放在session對象里,則下列正確的是( A )(選擇一項)

 

 

 

 

A.

session.setAttribute("message","accp");

 

B.

session.setAttribute(message,"accp");

 

C.

session.setAttribute("accp","message");

 

D.

session.setAttributes("message","accp");

 

19.

如果要從session范圍取出名為flag的變量,則以下說法正確的是( A )(選擇一項)

 

 

 

 

A.

session.getAttribute("flag");

 

B.

session.getAttributes("flag");

 

C.

session.getParameter("flag");

 

D.

session.get("flag");

 

 

20.

假設session對象中存放了一個Book對象:session.setAttribute("book",new Book()) , 則取出Book對象的正確語句是(  B  )(選擇一項

 

 

 

 

A.

Book book = session.getAttribute("book")

 

B.

Book book = (Book)session.getAttribute("book")

 

C.

Book book = session.getValue("book")

 

D.

Book book = (Book)session.getValue("book")

 

21.

在JSP中,以下可以實現請求轉發的是( D )(選擇一項)

 

 

 

A.

request.getRequestDispatcher("list.jsp");

 

B.

response.getRequestDispatcher("list.jsp");

 

C.

response.getRequestDispatcher("list.jsp").forward(request,response);

 

D.

request.getRequestDispatcher("list.jsp").forward(request,response);

 

22.

web.xml中預先對Servlet進行初始化設置的代碼如下:

<init-param>

         <param-name>myWord</param-name>

         <param-value>hello</param-value>

</init-param>

則如下獲取初始化參數的語句正確的是(  A  )選擇一項

 

 

 

 

A.

String myWord = getInitParameter("myWord");

 

B.

String myWord = getInitParameter("hello");

 

C.

String myWord = getInit("myWorld");

 

D.

String myWord= getInit("hello");

 

23.

以下代碼片段是使用cookie存儲數據,橫線處填寫( D )可以在look.jsp頁面顯示用戶名:Jack";(選擇一項)

<%

         response.addCookie(new Cookie("uname","Jack");

___________________________(1)____________

%>

look.jsp頁面部分代碼

<%

         Cookie[]cookies=___________(2)______________

         String user="";

         if(cookies !=null){

                   for(int i =0;i<cookies.length;i++){

                            if(cookies[i].getName().equals("uname"))

                                     user = cookies[i].getValues();

                   }

         }

         out.print("用戶名+user);

%>

 

 

 

 

A.

(1)request.getRequestDispatcher("look.jsp").forward(request,response)

(2)response.getCookies();

 

B.

(1)request.getRequestDispatcher("look.jsp").forward(request,response)

(2)request.getCookies();

 

C.

(1)response.sendRedirect("look.jsp")

(2)response.getCookies();

 

D.

(1)response.sendRedirect("look.jsp")

(2)request.getCookies();

 

24.

以下關於Servlet生命周期說法錯誤的是( C )。(選擇一項)

 

 

 

 

A.

Servlet容器根據Servlet類的位置加載Servlet類,成功加載后,由0容器創建Servlet的實例

 

B.

對於每一個Servlet實例,init()方法只被調用一次

 

C.

當Servlet容器接收到客戶端請求時,調用 Servlet的service()方法以及destory()方法處理客戶端請求

 

D.

servlet的實例是由servlet容器創建的,所以實例銷毀也由容器業完成

 

25.

以下關於轉發和重定向的說法錯誤的是(  C  )(選擇一項)

 

 

 

 

A.

轉發通過request的getRequestDispatcher().forward()方法即可實現,它的作用是在多個頁面交互過程中實現請求數據的共享。

 

B.

重定向可以理解為是瀏覽器至少提交了兩次請求,它是在客戶端發揮作用,通過請求新的地址實現頁面轉向

 

C.

轉發和重定向都可以共享request范圍內的數據

 

D.

轉發時客戶端的URL地址不會發生改變,而重定向時客戶端瀏覽器中顯示的是新的URL地址。

 

26.

以下Servlet代碼主要實現添加功能,並進行了中文亂碼的處理。其中第( C )處有錯誤。(選擇一項)

public void doPost(HttpServletRequest request, HttpServletResponse response)

        throws ServletException, IOException {

  response.setContentType("text/html;charset=utf-8");     //1

  response.setCharacterEncoding("utf-8");            //2

  String name=request.getparam("uname");                  //3

  ......

  PrintWriter out = response.getWriter();   //4

  ......

}

 

 

 

 

A.

1

 

B.

2

 

C.

3

 

D.

4

 

27.

自定義標簽的配置文件放在___D___

 

 

 

A.

WebRoot

 

B.

lib

 

C.

classes

 

D.

WEB-INF

 

28.

在J2EE中,給定某Servlet的代碼如下,編譯運行該文件,以下陳述正確的是(  B )。(選擇一項)

Public class Servlet1 extends HttpServlet{

         Publicvoid init() throws ServletException{

         }

         Publicvoid service(HttpServletRequest request,HttpServletResponse response)

                            ThrowsServletException,IOException{

                   PrintWriterout = response.getWriter();

                   out.println(hello!);

         }

}

 

 

 

 

A.

編譯該文件時會提示缺少doGet()或者dopost()方法,編譯不能夠成功通過

 

B.

編譯后,把Servlet1.class放在正確位置,運行該Servlet,在瀏覽器中會看到輸出文字:hello!

 

C.

編譯后,把Servlet1.class放在正確位置,運行該Servlet,在瀏覽器中看不到任何輸出的文字

 

D.

編譯后,把Servlet1.class放在正確位置,運行該Servlet,在瀏覽器中會看到運行期錯誤信息

 

29.

J2EE中,Servlet API為使用Cookie,提供了( A )類。

 

 

 

 

A.

javax.servlet.http.Cookie

 

B.

javax.servlet.http.HttpCookie

 

C.

javax.servlet. Cookie

 

D.

javax.servlet.http.HttpCookie

 

30

能夠保留請求作用域中數據的轉向方式是__D___

 

 

 

 

A.

response.forward()

 

B.

response.sendRedirect()

 

C.

session.getRequestDispatcher().forward(request,response)

 

D.

request.getRequestDispatcher().forward(request,response)

 

三、    判斷題

  1. out對象是一個輸出流,它實現了javax.servlet.JspWriter接口,用來向客戶端輸出數據。(  T
  2. 利用response對象的sendRedirect方法只能實現本網站內的頁面跳轉,但不能傳遞參數。( T
  3. respone對象主要用於向客戶端發送數據。( T )  
  4. Post屬於表單的隱式提交信息方法。( T
  5. 表單提交的信息就封裝在HTTP請求消息的信息體部分,用戶使用request對象的getParameter方法可以得到通過表單提交的信息。( T )  
  6. request對象的getRemoteHost()方法既能獲取客戶機的名稱,又能獲取客戶IP地址的方法是( T )   
  7. 同一個客戶在同一個Web服務目錄中的session對象是相同的,在不同的Web服務目錄中的session對象是不相同的。( T )
  8. session對象是HttpSession接口類的實例,由客戶端負責創建和銷毀,所以不同客戶的session對象不同。( F )  
  9. publiclongsession.setMaxInactiveInterval()設置最長發呆時間,單位毫秒。( F )
  10. session對象可以用來保存用戶會話期間需要保存的數據信息。( T )
  11. url重寫可以把session對象的id作為url參數傳帶過去,可以使用request對象的encodeURL(“”)。( F )
  12. application對象對所有用戶都是共享的,任何對它的操作都會影響到所有的用戶。( T )
  13. application對象可以用來保存數據。( T )  
  14. 使用request對象獲取信息的時候,可能會出現NullPointerException異常( F )   
  15. Servlet與Applet它們都運行在服務器端。( F )
  16. Cookie由瀏覽器保存在客戶端,通常保存為一個文本文件。( T )  
  17. 客戶機與Servlet間可以直接的交互。( F )
  18. servlet容器中,一個Servlet類只會new一個servlet對象( T  )
  19. 當服務器收到一個請求時,會new一個新的線程來處理該請求( T )
  20. request.getSession(),調用兩次后,返回的Session對象是完全不同的兩個對象( F )
  21. servlet能脫離服務器運行( F )
  22. 一個servlet可以對應多個url( T )
  23. servlet程序通過HttpServletResponse對象直接將信息發送給客戶端( F )

 

四、    簡答題

  1. 創建並運行一個Servlet的基本流暢是什么?
  2. 簡述Servlet的聲明周期
  3. 簡述請求轉發於重定向的區別
  4. 簡述tomcat的目錄結構及其作用
  5. 簡述HTTP協議的特點
  6. 簡述Cookie和Session機制
  7. tomcat配置文件web.xml中,DefalutServlet的作用是? JspServlet的作用是?
  8. server.xml中,我們修改哪個元素的哪個屬性可以將服務器監聽端口改成其他端口?80端口有什么特別嗎?
  9. 請說明:service,doGet,doPost方法的調用順序

10.下面的問題如何解決:405   http method post is not supported by this url


11. Servlet中可以隨意定義成員變量和隨意使用它。對不對?為什么?

12. 我想讓session對象使用完后,立馬失效。可以調用哪些方法?

13. 翻譯如下英文,明白session的基本用法:

Provides a way to identify a user across more than one page request or visit to a Web site and to store information about that user.

The servlet container uses this interface to create a session between an HTTP client and an HTTP server. The session persists for a specified time period, across more than one connection or page request from the user. A session usually corresponds to one user, who may visit a site many times. The server can maintain a session in many ways such as using cookies or rewriting URLs.

 

This interface allows servlets to

    View and manipulate information about a session, such as the session identifier, creation time, and last accessed time

    Bind objects to sessions, allowing user information to persist across multiple user connections

14. tomcat目錄:lib、webapps分別有什么作用?

15. 如何手工發布一個web項目到tomcat服務器上?

 

五、    編碼題

1. 動手操作:解壓tomcat,配置JAVA_HOME。啟動tomcat,關閉tomcat。

2. 動手操作:建立一個web項目,建立一個servlet並配置,將該項目發布到tomcat下。然后訪問你寫好的servlet

3. 動手操作:建立第二個servlet,使用HttpServletRequest對象讀取某個請求頭信息,使用HttpServletResponse對象向客戶端寫比較復雜的html、css、js代碼。

4.使用純Servlet技術實現網站登陸功能,要求鏈接數據庫,創建一個User表。User表包括id、用戶名,密碼,昵稱,用戶創建日期,性別,年齡這些字段,並使用cookie技術實現三天免登陸功能。要求有用戶密碼登陸錯誤提示,以及用戶名和密碼格式檢驗,驗證碼,並有友好的HTML界面。


免責聲明!

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



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