servlet练习题

servlet练习题

第一部分

一、单选题 (题数:20,共 100.0 分)
1

()标记指定访问servlet的路径。
(5.0分)
5.0 分

A、

<servlet-class>
B、

<servlet-name>
C、

<url-pattern>
D、

<context-param>

正确答案: A 我的答案:A
2

完整的配置一个Servlet需要( )标签。
(5.0分)
5.0 分

A、

<servlet-name/>和<servlet-class>
B、

<servlet-mapping><servlet-name>
C、

<servlet></servlet>和<servlet-mapping></servlet-mapping>
D、

<webapp></webapp>

正确答案: C 我的答案:C
3
下列哪个接口或类检索与用户相关的会话对象?( )(5.0分)
5.0 分

A、
ServletContext
B、
ServletConfig
C、
HttpServletRequest
D、
HttpServletResponse

正确答案: C 我的答案:C

答案解析:
4
要为一个名为TestServlet的服务器小程序指定初始化参数,应该使用下面哪个部署描述文件元素?( )(5.0分)
5.0 分

A、
<servlet-param>
B、
<initialization-param>
C、
<param>
D、
<init-param>

正确答案: D 我的答案:D

答案解析:
5
下列哪个方法用于从ServletContext中检索属性?( )(5.0分)
5.0 分

A、
String getObjext(int index)
B、
Object getObject(int index)
C、
Object getAttribute(String name)
D、
String getAttribute(String name)

正确答案: C 我的答案:C

答案解析:
6

可以执行请求转发的操作是( )。
(5.0分)
5.0 分

A、

<jsp:include>标记
B、

jsp中response内置对象的sendRedirect()方法
C、

RequestDispatcher对象的forward()方法
D、

RequestDispatcher对象的include()方法

正确答案: C 我的答案:C
7

每次传递请求或响应时调用Filter的( )方法。
(5.0分)
5.0 分

A、

getInitParameter()
B、

destroy()
C、

doFilter()
D、

init()

正确答案: C 我的答案:C

答案解析:
8

( )方法不是 Filter接口中定义的。
(5.0分)
5.0 分

A、

init()
B、

doFilter()
C、

help()
D、

destroy()

正确答案: C 我的答案:C

答案解析:
9

给定一个Servlet的代码片段如下:

Public void doGet(HttpServletRequest request,HttpServletResponse response)

throws ServletException,IOException{   

______________________;

out.println("hi kitty! ");

out.close(); }

运行次Servlet时输出:hi kitty!

则应在此Servlet下划线处填充如下代码(  )。

(5.0分)
5.0 分

A、

OutputStream out = request.getWriter()
B、

OutputStream out = response.getOutputStream()
C、

PrintWriter out = response.getWriter()
D、

PrintWriter out = request.getWriter()

正确答案: C 我的答案:C
10

HttpServlet的子类要从HTTP请求中获得请求参数,应该调用( )方法。
(5.0分)
5.0 分

A、

调用 HttpServletRequest对象的 getAttributet()方法
B、

调用 HttpServletRequest对象的 getParameters()方法
C、

调用 HttpServletRequest对象的 getHeader()方法
D、

调用 ServletContext对象的 getAttribute()方法

正确答案: B 我的答案:B

答案解析:
11
关于web.xml的配置说法错误的是( )。(5.0分)
5.0 分

A、
在web.xml中不可同时指定多个Servlet。
B、
在web.xml描述中,要为Servlet做URI映射。
C、
在web.xml描述中,要指定这个Servlet的名字。
D、
在web.xml描述中,要指定这个Servlet的类。

正确答案: A 我的答案:A

答案解析:
12
在J2EE中,使用Servlet过滤器时,需要在web.xml通过( )元素将过滤器映射到Web资源。(5.0分)
5.0 分

A、
<filter>
B、
<servlet>
C、
<filter-mapping>
D、
<servet-mapping>

正确答案: C 我的答案:C

答案解析:
13

Servlet程序的入口点是:( )
(5.0分)
5.0 分

A、

doGet()
B、

main()
C、

init()
D、

service()

正确答案: C 我的答案:C

答案解析:
14

JSP页面经过编译之后,将创建一个( )。
(5.0分)
5.0 分

A、

application
B、

servlet
C、

exe文件
D、

applet

正确答案: B 我的答案:B
15

在JSP/Servlet的生命周期中,用于初始化的方法是()。
(5.0分)
5.0 分

A、

doGet()
B、

doPost ()
C、

destroy()
D、

init()

正确答案: D 我的答案:D

答案解析:
16

Servlet文件在Java Web开发中的主要作用是()。
(5.0分)
5.0 分

A、

作为控制器
B、

实现数据库连接
C、

开发页面
D、

提供业务功能

正确答案: A 我的答案:A

答案解析:
17
一个servlet的生命周期不包括( )方法?(5.0分)
5.0 分

A、
service()方法
B、
init()方法
C、
destroy()方法
D、
invalidate()方法

正确答案: D 我的答案:D

答案解析:
18

Servlet中,HttpServletResponse的( )方法用来把一个Http请求重定向到另外的URL。
(5.0分)
5.0 分

A、

redirectResponse()
B、

sendRedirect()
C、

redirectURL()
D、

sendURL()

正确答案: B 我的答案:B

答案解析:
19

以下哪种方法不是Servlet的方法?()
(5.0分)
5.0 分

A、

post
B、

init
C、

service
D、

destroy

正确答案: A 我的答案:A

答案解析:
20
所有的servlet过滤器类都必须实现( )接口。(5.0分)
5.0 分

A、
javax.servlet.Servlet
B、
javax.servlet.ServletConfig
C、
javax.servlet.Filter
D、
javax.servlet.ServletContext

正确答案: C 我的答案:C

答案解析:

第二部分

一、单选题 (题数:49,共 100.0 分)
1

下面Servlet的( )方法用来为请求服务,在Servlet生命周期中,Servlet每被请求一次它就会被调用一次。
(2.0分)
2.0 分

A、

service()
B、

doPost()
C、

init()
D、

destroy()

正确答案: A 我的答案:A
2

当访问一个Servlet时,以下Servlet中的哪个方法先被执行?( )
(2.0分)
2.0 分

A、

doGet()
B、

service()
C、

destroy()
D、

init0

正确答案: D 我的答案:D
3

在MVC设计模式体系结构中,( )是实现控制器的首选方案。
(2.0分)
2.0 分

A、

JavaBean
B、

HTML
C、

Servlet
D、

JSP

正确答案: C 我的答案:C
4

编写Servlet 的doPost方法时,需要抛出异常是( )。
(2.0分)
2.0 分

A、

HttpServletException,RemoteException
B、

HttpServletException,IOException
C、

ServletException,IOException
D、

ServletException,RemoteException

正确答案: C 我的答案:C
5

下面是一个Servlet部署文件的片段:

< servlet>

<servlet-name>Hello</servlet-name>

<servlet-class>myservlet.example.FirstServlet</servlet-class>     

< /servlet>

< servlet-mapping>

<servlet-name>Hello</servlet-name>

<url-pattern>/helpHello</url-pattern>

< /servlet-mapping>

Servlet的类名是( )

(2.0分)
2.0 分

A、

FirstServlet
B、

/helpHello
C、

helpHello
D、

Hello

正确答案: A 我的答案:A
6

假设在helloapp应用中有一个HelloServet.java类,它位于com.itheima包中,那么这个类的.class文件的存放路径应该是什么
(4.0分)
4.0 分

A、

helloapp/WEB-INF/classes/HelloServlet.class
B、

helloapp/WEB-INF/HelloServlet.class
C、

helloapp/HelloServlet.class
D、

helloapp/WEB-INF/classes/com/itheima/HelloServlet.class

正确答案: D 我的答案:D
7

下面Servlet的( )方法载入时执行,且只执行一次,负责对Servlet进行初始化。
(2.0分)
2.0 分

A、

init()
B、

destroy()
C、

service()
D、

doPost()

正确答案: A 我的答案:A
8

在访问Servlet时,在浏览器地址栏中输入的路径是在( )地方配置的。
(2.0分)
2.0 分

A、

<uri-pattern/>
B、

<servlet-name/>
C、

<url-pattern/>
D、

<servlet-mapping/>

正确答案: C 我的答案:C
9

在J2EE中,给定某Servlet的代码如下,编译运行该文件,以下陈述正确的是()。(选择一项)

Public class Servlet1 extends HttpServlet{

     Publicvoid init() throws ServletException{

     }

     Publicvoid service(HttpServletRequest request,HttpServletResponse response)

                        ThrowsServletException,IOException{

               PrintWriterout = response.getWriter();

               out.println(“hello!”);

}
(2.0分)
2.0 分

A、

编译该文件时会提示缺少doGet()或者dopost()方法,编译不能够成功通过
B、

编译后,把Servlet1.class放在正确位置,运行该Servlet,在浏览器中会看到运行期错误信息
C、

编译后,把Servlet1.class放在正确位置,运行该Servlet,在浏览器中看不到任何输出的文字
D、

编译后,把Servlet1.class放在正确位置,运行该Servlet,在浏览器中会看到输出文字:hello!

正确答案: D 我的答案:D
10
阅读下面Servlet的doGet()方法中代码片段:
String data=“中国”;
response.setCharacterEncoding(“utf-8”);
response.setHeader(“Content-Type”,“text/html;charset=utf-8”);
PrintWriter out = response.getWriter();
out.println(data);
当打开浏览器直接访问时看到的结果,说法正确的是(2.0分)
2.0 分

A、
正常输出:中国
B、
输出乱码
C、
页面没有任何输出
D、
出现500异常

正确答案: A 我的答案:A

答案解析:
11

下面关于页面重定向与转发说法错误的是( )。
(2.0分)
2.0 分

A、

页面重定向之后,request内的对象将无法使用
B、

使用重定向需要通知浏览器发送一个新的页面请求,而转发不需要
C、

重定向的速度比转发快
D、

重定向会使URL变成另外新的URL,转发时,URL会保持不变

正确答案: C 我的答案:C
12

在Servlet中有一段代码如下

public void doPost(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

 request.setAttribute("name", new Integer(100));

 response.sendRedirect("show.jsp");

}

在show.jsp中

<%=request.getAttribute("name")%>

页面结果为(  )。

(2.0分)
2.0 分

A、

100
B、

Integer
C、

null
D、

java.lang.Integer

正确答案: C 我的答案:C
13

阅读下面代码片段:

RequestDispatcher dispatcher=request.getRequestDispatcher("a.jsp");

dispatcher.forward(request,response);

关于该段代码的作用,下列(  )叙述是正确的。

(2.0分)
2.0 分

A、

页面重定向到a.jsp页面
B、

从a.jsp转发到当前页面
C、

从a.jsp定向到当前页面
D、

将请求转发到a.jsp页面

正确答案: D 我的答案:D
14
下面哪个类是Tomcat默认已配好的缺省Servlet(2.0分)
2.0 分

A、
HttpServletDefault
B、
DefaultServlet
C、
DefaultHttpServlet
D、
ServletDefault

正确答案: B 我的答案:B

答案解析:
15

假设在helloapp应用中有一个HelloServlet类,它位于org.javathinker包下,那么这个类的class文件应该放在( )目录下。
(2.0分)
2.0 分

A、

helloapp/WEB-INF/classes/org/javathinker/HelloServlet.class
B、

helloapp/WEB-INF/classes/HelloServlet.class
C、

helloapp/WEB-INF/HelloServlet.class
D、

helloapp/HelloServlet.class 

正确答案: A 我的答案:A
16
下列关于访问HTML页面与Servlet的说法,错误的是(2.0分)
2.0 分

A、
后者需要在web,xml文件中配置URL路径
B、
访问HTML页面 时,Web服务直接返回HTML页面;访问Servlet时,Web服务器直接返回Servlet的源码
C、
访问HTML页面时,Web服务直接返回HTML页面,访问Servlet时,Web服务器调用Servlet的方法,由Servlet动态生成HTML页面
D、
它们都使用HTTP协议

正确答案: B 我的答案:B

答案解析:
17

阅读下面代码片段:

RequestDispatcher dispatcher=request.getRequestDispatcher(“a.jsp”);

dispatcher.forward(request,response);

关于该段代码的作用,下列叙述哪项是正确的?( )
(2.0分)
2.0 分

A、

将请求转发到a.jsp页面
B、

页面重定向到a.jsp页面
C、

从a.jsp定向到当前页面
D、

从a.jsp转发到当前页面

正确答案: A 我的答案:A
18

对于ServletRequest接口的获取请求参数的方法的描述那一项是正确的?( )
(2.0分)
2.0 分

A、

如果一个参数key有多个值,那么getParameter(key)方法会返回空
B、

getParameter方法只用于接收POST请求参数,接收GET请求参数需要使用getQueryString方法
C、

如果一个参数key有多个值,那么getParameterValues(key)方法会返回一个包含所有值的字符串数组
D、

getParameter方法返回Object对象,使用前要强制类型转换:如String str=(String) request.getParameter(key)

正确答案: C 我的答案:C
19

当一个Servlet首次被请求的时候,服务器首先会调用( )方法。
(2.0分)
2.0 分

A、

doPost
B、

doInit
C、

Init
D、

doGet

正确答案: C 我的答案:C
20
下面方法中,在Servlet的初始化阶段将调用的是(2.0分)
2.0 分

A、
service()
B、
init()
C、
destroy()
D、
doGet()

正确答案: B 我的答案:B

答案解析:
21

在浏览器中输入http://localhost:8080/myWebApp/start/,就会调用itcast包中名为Student的Servlet,那么在web.xml中配置正确的是
(2.0分)
2.0 分

A、
<servlet> <servlet-name>/start/*</servlet-name> <servlet-value>itcast.Student</servlet-class> </servlet>
B、
<servlet> <servlet-name>student</servlet-name> <servlet-value>itcast.Student</servlet-class> </servlet> <servlet-mapping> <servlet-name>student</servlet-name> <url-pattern>/start</url-pattern> </servlet-mapping>
C、
<servlet> <servlet-name>itcast.Student </servlet-name> <servlet-value>student </servlet-class> </servlet> <servlet-mapping> <servlet-name> itcast.Student </servlet-name> <url-pattern>/start/*</url-pattern> </servlet-mapping>
D、
<servlet> <servlet-name> itcast.Student </servlet-name> <servlet-value> /start/*</servlet-class> </servlet>

正确答案: B 我的答案:B

答案解析:
22

在编写过滤器时,需要完成的方法( )。
(2.0分)
2.0 分

A、

doFilter()
B、

doChain()
C、

doDelete() 
D、

doPost()

正确答案: A 我的答案:A
23

下面哪一项对Servlet、JSP的描述错误?( )
(2.0分)
2.0 分

A、

一般用JSP来处理业务逻辑,用Servlet来实现页面显示。
B、

JSP技术是在Servlet之后产生的,它以Servlet为核心技术,是Servlet技术的一个成功应用。
C、

当JSP页面被请求时,JSP页面会被JSP引擎翻译成Servelt字节码执行。
D、

HTML、Java和脚本语言混合在一起的程序可读性较差,维护起来较困难。

正确答案: A 我的答案:A
24

在编写Servlet时需要( )。
(2.0分)
2.0 分

A、

实现HttpRequest
B、

实现HttpRequestServlet
C、

继承Servlet
D、

继承HttpServlet 

正确答案: D 我的答案:D
25

两个JSP文件中的代码如下,执行后的输出为( )。

1.jsp

<% request.setAttribute("name","JSP");

   session.setAttribute("name","JSP");

   response.sendRedirect("2.jsp"); %>

2.jsp

<% out.print(request.getAttribute("name"));

   out.print(session.getAttribute("name")); %>

(2.0分)
2.0 分

A、

null null
B、

JSP JSP
C、

null JSP
D、

JSP null

正确答案: C 我的答案:C
26

J2EE中,HttpServletRequest类的( )方法用返回与当前请求相关联的会话,如果没有,则返回null 。
(2.0分)
0.0 分

A、

getSession(true)
B、

getSession(null)
C、

getSession(false)
D、

getSession()

正确答案: C
27
下面获取初始化参数encoding的写法中,正确的是(2.0分)
2.0 分

A、
String encode = getInitParameterNames(String name)
B、
Enumeration enumers = getInitParameterNames()
C、
Object obj = getInitParameter(String name)
D、
String encode = getInitParameter(String name)

正确答案: D 我的答案:D

答案解析:
28

下面是Servlet调用的一种典型代码:

<%@ page contentType=“text/html;charset=GB2312” %>

<%@ page import=“java.sql.*” %>

< html>< body bgcolor=cyan>

< a href=“helpHello”>访问FirstServlet< /a>

< /body>< /html>

该调用属于下述哪种。( )
(2.0分)
0.0 分

A、

url直接调用
B、

表单提交调用
C、

jsp:forward调用
D、

超级链接调用

正确答案: D
29

servlet的生命周期由一系列事件组成,把这些事件按照先后顺序排序,以下正确的是( )。

(2.0分)
2.0 分

A、

实例化,加载类,初始化,请求处理,销毁
B、

加载类,初始化,实例化,请求处理,销毁
C、

加载类,实例化,请求处理,初始化,销毁
D、

加载类,实例化,初始化,请求处理,销毁

正确答案: D 我的答案:D

答案解析:
30
下面关于Servlet配置信息的选项中,用来指定Servlet完整类名的是(2.0分)
2.0 分

A、
<servlet-class>
B、
<class-path>
C、
<class>
D、
<servlet-name>

正确答案: A 我的答案:A

答案解析:
31
下面选项中, 哪个方法用于返回映射到某个资源文件的URL对象(2.0分)
2.0 分

A、
getResourceAsStream(String path)
B、
getRealPath(String path)
C、
getResource(String path)
D、
getResourcePaths(String path)

正确答案: C 我的答案:C

答案解析:
32

在Servlet中,下列语句可以正确获取PrintWriter对象的是( )。
(2.0分)
2.0 分

A、

PrintWriter out= response.getWriter()
B、

PrintWriter out=request.getPrintWriter()
C、

PrintWriter out=request.getWriter()
D、

PrintWriter out=response.getPrintWriter()

正确答案: A 我的答案:A
33

Servlet的运行过程是( )。
(2.0分)
2.0 分

A、

首先对Servlet 进行配置,然后服务器在处理请求时,将配置过的Servlet类找到,然后实例化处理请求
B、

当请求Servlet时,服务器会即时加载Servlet类,然后对该类进行实例化,调用相应的方法处理请求
C、

在服务器启动时,会加载Servlet,然后在处理请求的时候,实例化Servlet对象处理请求
D、

Servlet是一个具有接受请求和响应功能的类,在被请求时,Servlet早就被实例化好了,可以直接处理请求

正确答案: C 我的答案:C
34

在web.xml中使用( )标签配置过滤器。
(2.0分)
2.0 分

A、

<filter-pattern>和<filter>
B、

<filter>和<filter-mapping>
C、

<filter-name>和<filter-class>
D、

<filter>和<filter-class>

正确答案: B 我的答案:B
35

给定一个Servlet程序的代码片段,如下:()

Public void doPost(HttpServletRequestrequest,HttpServletResponse response) throws

ServletException {

request.getSession().getAttribute(“A”);  //第二行

}

假定第二行返回的对象引用不是null,那么这个对象存储在( )范围中

(2.0分)
2.0 分

A、

page
B、

application
C、

request
D、

session

正确答案: D 我的答案:D
36

在Servlet中,response.getWriter()返回的是( )。
(2.0分)
0.0 分

A、

PrintWriter对象
B、

Out对象
C、

JspWriter对象
D、

ResponseWriter对象

正确答案: A
37

给定一个 Servlet 的doGet方法中的代码片段,如下:

     request.setAttribute(“name”,”zhang”);

     response.sendRedirect(“http://localhost:8080/servlet/MyServlt”);

那么在 MyServlet中可以使用( )方法把属性 name的值取出来。

(2.0分)
2.0 分

A、

Objectstr=request.getAttribute(“name”);
B、

Stringstr=(String)request.getAttribute(“name”);
C、

无法取出来 
D、

Stringstr=request.getAttribute(“name”); 

正确答案: C 我的答案:C
38

Servlet中,HttpServletResponse的( )方法用来把一个Http请求重定向到另外的URL
(2.0分)
2.0 分

A、

redirectResponse()
B、

sendRedirect()
C、

sendURL()
D、

redirectURL()

正确答案: B 我的答案:B
39

HttpServletRequest对象的( )方法能够获取一个表单参数的值。
(2.0分)
2.0 分

A、

getAttribute()
B、

getQuaryString()
C、

getPathInfo()
D、

getParameter()

正确答案: D 我的答案:D
40

给定一个Servlet程序的代码片段,如下:

Public void doPost(HttpServletRequest request,HttpServletResponse response) throws ServletException {

 request.getSession().getAttribute("A");  //第二行

}

假定第二行返回的对象引用不是null,那么这个对象存储在( )范围中。
(2.0分)
2.0 分

A、

request
B、

page
C、

session
D、

application

正确答案: C 我的答案:C
41

针对下述JSP页面,在Servlet中需要得到用户选择的爱好的数量,最合适的代码时( )。

< input type=“checkbox” name=“aihao” value=“阅读”/>阅读;

< input type=“checkbox” name=“aihao” value=“运动”/>运动;

< input type=“checkbox” name=“aihao” value=“游戏”/>游戏;

< input type=“checkbox” name=“aihao” value=“其他”/>其他;

(2.0分)
2.0 分

A、

request.getParameter("aihao").length
B、

request.getParameterValues("aihao").length
C、

request.getParameterValues("aihao").size
D、

request.getParameter("aihao").size

正确答案: B 我的答案:B
42

假设在myServlet应用中有一个MyServlet类,在web.xml文件中对其进行如下配置:

<servlet>

    <servlet-name> mysrvlet </servlet-name>

    <servlet-class> com.wgh.MyServlet </servlet -class>

</servlet>

< servlet-mapping>

    <servlet -name> myservlet </servlet-name>

    <servlet-pattern> /welcome </url-pattern>

</servlet-mapping>

则以下选项可以访问到MyServlet的是(     )。

(2.0分)
2.0 分

A、

http://localhost:8080/com/wgh/MyServlet
B、

http://localhost:8080/MyServlet
C、

ttp://localhost:8080/myservlet
D、

http://localhost:8080/ welcome

正确答案: D 我的答案:D

答案解析:
43

J2EE中,以下关于HttpServlet的说法错误的是( )。
(2.0分)
2.0 分

A、

HttpServlet位于javax.servlet.http包中
B、

HttpServlet是一个抽象类
C、

HttpServlet类扩展了GenericServlet类
D、

HttpServlet类的子类必须至少重写service方法

正确答案: D 我的答案:D
44
以下关于HttpServlet的说法中,错误的是(2.0分)
2.0 分

A、
HttpServlet类的子类至少重写service方法
B、
HttpServlet位于javax.servlet.http包中
C、
HttpServlet是一个抽象类
D、
HttpServlet的子类至少重写doGet或doPost方法之一

正确答案: A 我的答案:A

答案解析:
45

在Servlet里,能正确获取session的语句是( )。

(2.0分)
2.0 分

A、

HttpSession session=response.getSession (true)
B、

HttpSession session=request.getSession(true)
C、

HttpSession session=response.getHttpSession (true)
D、

HttpSession session=request.getHttpSession(true)

正确答案: B 我的答案:B
46

在J2EE中,对于HttpServlet类的描述,错误的是( )。
(2.0分)
2.0 分

A、

Httpservlet类中处理客户请求和响应时所使用的两个接口是:HttpServletRequest和HttpServletResponse
B、

我们自己编写的servlet继承了Httpservlet类,一般只需要覆盖doPost或doGet方法,不必覆盖servive()方法,因为一个service()方法会调用doPost或者doGet方法
C、

我们自己编写的Servlet继承了HttpServlet类,一定需覆盖doPost或者doGet 
D、

Httpservlet类扩展了GenericServlet类,实现了GenericServlet类的抽象方法

正确答案: C 我的答案:C
47

Servlet中,HttpServletResponse的( )方法用来把一个Http请求重定向到另外的URL。
(2.0分)
2.0 分

A、

sendRedirect()
B、

redirectResponse()
C、

redirectURL()
D、

sendURL()

正确答案: A 我的答案:A
48

Servlet获得初始化参数的对象是( )
(2.0分)
2.0 分

A、

Response
B、

ServletConfig
C、

ServletContext
D、

Request

正确答案: B 我的答案:B
49

J2EE中,当把来自客户机的HTTP请求委托给servlet时,会调用HttpServlet的( )方法。
(2.0分)
2.0 分

A、

init
B、

doget
C、

service
D、

dopost

正确答案: C 我的答案:C

猜你喜欢

转载自blog.csdn.net/DecorateCC/article/details/124735901