1.Maven是用于构建的工具,使用前需要配置(C )文件,在里边添加阿里云的镜像便于自动下载相关的依赖jar包。
A.web.xml
B.pom.xml
C.Settings.xml
2.(B )是一个用 Java 编写的程序,是一种实现了Servlet接口的类,它是由web容器负责创建并调用,在服务器容器上运行,用于接收和响应用户的请求。
A.Filter
B.Servlet
C.Request
D.Response
Servlet 是一个用 Java 编写的程序,是一种实现了Servlet接口的类,它是由web容器负责创建并调用,在服务器容器上运行,用于接收和响应用户的请求。
3.当Servlet启动时,会为每个Web应用创建一个唯一的( A)对象代表当前Web应用,该对象不仅封装了当前Web应用的所有信息,而且实现了多个Servlet之间数据的共享。
A.ServletContext
B.ServletConfig
C.Servlet
D.ServletMapping
选项A:当Servlet启动时,会为每个Web应用创建一个唯一的ServletContext对象代表当前Web应用,该对象不仅封装了当前Web应用的所有信息,而且实现了多个Servlet之间数据的共享。——实现多个Servlet之间数据的共享。
选项B:当Tomcat初始化一个Servlet时,会将该Servlet的配置信息封装到一个ServletConfig对象中,通过调用init(ServletConfig cofig)方法将ServletConfig对象传递给Servlet。
选项C:Servlet 是一个用 Java 编写的程序,是一种实现了Servlet接口的类,它是由web容器负责创建并调用,在服务器容器上运行,用于接收和响应用户的请求。
选项D:这是在配置servlet方法中,使用xml配置方法里的一个配置标签
4.HttpServletResponse的(C )方法所获取的字符输出流对象为PrintWriter类型,可以直接输出字符文本内容。
A.getOutputStream()
B.getInputStream()
C.getWriter()
D.getReader()
发送响应消息体相关的方法:
(1)getOutputStream():所获取的字节输出流对象为ServletOutputStream类型。
由于ServletOutputStream是OutputStream的子类,它可以直接输出字节数组中的二进制数据。因此,要想输出二进制格式的响应正文,就需要使用getOutputStream()方法。
(2)getWriter():所获取的字符输出流对象为PrintWriter类型。由于PrintWriter类型的对象可以直接输出字符文本内容,因此,要想输出内容全为字符文本的网页文档,需要使用getWriter()方法。
5.【单选题】 (4分)
网页表单中有用户名和密码,输入用户名和密码后点击登录执行对应的Servlet中的代码,在Servlet中想要获取网页表单中的用户名和密码可以通过(C)方法获取。
A.response.getParameter( )
B.request.getAttribute( )
C.request.getParameter( )
D.response.getAttribute( )
6.【单选题】 (4分)
编写过滤器要实现javax.servlet.Filter接口的方法,其中不包括( C)。
A.init方法
B.doFilter方法
C.doPost方法
D.destroy
编写一个过滤器的基本步骤:
(1)实现javax.servlet.Filter接口;
(2)实现init方法,读取过滤器的初始化参数;
(3)实现doFilter方法,完成对请求或响应的过滤;
(4)调用FilterChain接口对象的doFilter方法,向后续的过滤器或Servlet(jsp)传递请求或响应;
(5)实现destroy方法,释放过滤器使用的资源。
7.【单选题】 (4分)
采用注解方式配置Servlet时用(C )。
A.@Servlet
B.@WebServelet
C.@WebServlet
D.@WebServerlet
8.【单选题】 (4分)
Servlet在服务器容器上运行,处理客户端请求并且将( D)返回客户端。
A.过滤
B.请求
C.消息
D.响应
Servlet的工作流程:
(1)客户机将请求发送到服务器,服务器上的 Web 容器实例化 Servlet, 并为 Servlet 进程创建线程。 Servlet 是在出现第一个请求时装入的, 在服务器关闭之前不会卸载它。
(2)Web 容器将请求信息发送到 Servlet,Servlet创建一个响应,并将其返回到 Web容器,Web容器将响应发回给客户机。
(3)服务器关闭或 Servlet 空闲时间超过一定限度时,调用destroy方法退出。
9.Servlet生命周期包括3个方法,分别是:init,( D)和destroy。
A.servlet
B.doGet
C.doPost
D.service
Servlet生命周期:
创建servlet实例,初始化实例对象调用init()方法,请求servlet服务调用service()方法,销毁实例对象前调用destroy()销毁方法,销毁实例并标记为垃圾收集
10.过滤器的一些常见应用不包括以下( D)。
A.认证过滤
B.登录和审核过滤
C.图像转换过滤
D.请求重定向
过滤器的一些常见应用:
1、认证过滤;
2、登录和审核过滤;
3、图像转换过滤;
4、数据压缩过滤 ;
5、加密过滤;
6、资源访问触发事件过滤等。
11.在web.xml文件中配置Servlet时,( A)用于映射Servlet对外访问的虚拟路径。
A.<servlet-mapping>
B.<servlet>
C.<servlet-name>
如果不使用@WebServlet注解,可在web.xml文件中 进行配置。
一个Servlet需要配置<servlet>标记和 <servlet-mapping>标记。
- <servlet-name>:名称,两者中的名称要一致。
- <servlet-mapping>:用于映射Servlet对外访问的虚拟路径。
12.常用的Servlet配置方法有( B)、xml文件和自定义容器的方式
A.注释方式
B.注解方式
常用的Servlet配置方法有注解方式、xml文件和自定义容器的方式。
注解方式是javaEE8以后常用的servlet配置方式,而自定义容器方式了解即可。
13.在Servlet API中,定义了一个( A)接口,它继承自ServletResponse,专门用来封装HTTP响应消息。
A.HttpServletResponse
B.HttpServletRequest
C.Request
D.Response
14.HttpServletResponse的( B)方法用于获取请求消息中的请求方式。
A.getRequestURI
B.getMethod
C.getContextPath
D.getServletPath
15.下面(B )对象由Servlet容器创建,实现的是请求转发。
A.sendRedirect
B.RequestDispatcher
C.forward
D.include
RequestDispatcher实现的是请求转发。?
请求转发的意思就是说通知其他web资源处理当前Servlet的请求。RequestDispatcher对象由Servlet容器创建,该对象用于接收客户端的请求并将请求发送到服务器上的任意资源(例如:Servlet,HTML文件或JSP文件)。因为对于RequestDispatcher对象来说,WEB资源都是可见的,可直接将请求转发到任意资源。
16.为了避免显示在网页中的字符乱码,可以通过(A )来进行设置 。
A.response . setContentType("text/html; charset=utf-8");
B.request . setContentType("text/html; charset=utf-8");
C.response.setCharacterEncoding("uf-8");
D.response.setHeader(" Content-Type"," text/html;charset=utf-8");
中文输出乱码问题:
由于计算机中的数据都是以二进制形式存储的,当传输文本时,就会发生字符和字节之间的转换。字符与字节之间的转换是通过查码表完成的,将字符转换成字节的过程称为编码,将字节转换成字符的过程称为解码。如果编码和解码使用的码表不一致,就会导致乱码问题。
方法一:
// 设置HttpServletResponse使用utf-8编码 response.setCharacterEncoding("utf-8"); // 通知浏览器使用utf-8解码 response.setHeader("Content-Type","text/html;charset=utf-8");
方法二:
// 包含第一种方式的两个功能 response.setContentType("text/html;charset=utf-8");
17.在web容器中遵循生成、运行、销毁这样的生命周期,当进行相关配置后,web容器就会调用监听器上的方法,对相应的对象进行对应的事件处理,不包括(A )。
A.HttpServletFilter对象
B.HttpServletRequest对象
C.HttpSession对象
D.ServletContext对象
在web系统中,监听器就是应用监听事件来监听请求中的行为而创建的一组类。HttpServletRequest、HttpSession、ServletContext对象在web容器中遵循生成、运行、销毁这样的生命周期,当进行相关配置后,web容器就会调用监听器上的方法,进行对应的事件处理。
18.web.xml配置中过滤器起作用的顺序是看<filter-mapping>中谁在上面谁优先执行。(对)
19.注解配置是按照类名字符串比较,值小的先执行,如:AFilterDemo 优先于 BFilterDemo(对)
20.对于客户端请求,创建Servlet实例后,不驻留在内存中,所以再次请求时须再加载。(错 )
?Servlet的特点:
①在服务器容器上运行,处理客户端请求并且将响应返回客户端;
②移植性好,本身是一个Java类,跨平台;
③对于客户端请求,只需创建Servlet实例一次,驻留在内存中,再次请求时无须加载。
21.Cookie一旦创建,它的名称就不能更改,Cookie的值可以为任何值,创建后允许被修改。( 对)
Cookie类有且仅有一个构造方法,具体语法格式:
public Cookie(java.lang.String name,java.lang.String value)
在Cookie的构造方法中,参数name用于指定Cookie的名称,value用于指定Cookie的值。需要注意的是,Cookie一旦创建,它的名称就不能更改,Cookie的值可以为任何值,创建后允许被修改。
22.请求转发指的是Web服务器接收到客户端的请求后可能由于某些条件限制,不能访问当前请求URL所指向的Web资源,而是指定了一个新的资源路径,让客户端重新发送请求。(错?)
1、请求重定向:指的是Web服务器接受到客户端的请求后,可能由于某些条件限制,不能访问当前请求URL所指向的Web资源,而是指定了一个新的资源路径,让客户端重新发送请求。
2、请求转发:RequestDispatcher实现的是请求转发。 请求转发的意思就是说通知其他web资源处理当前Servlet的请求。
23.【填空题】 (2分)
在Servlet技术中,提供了两个用于保存会话数据的对象,分别是Cookie和_Session__。
为了保存会话过程中产生的数据,Cookie、URL重写、字段隐藏、SSL技术都可用于会话跟踪,在Servlet技术中,提供了两个用于保存会话数据的对象,分别是Cookie和Session。
24.【填空题】 (2分)
Session对象的_invalidate()__方法用于强制使Session对象无效。
1:获取Session:
通过HttpRequest对象调用 getSession() 或 getSession(boolean create ) 方法
2:存储数据到session或从session读取数据 getAttribute(“名称”):
查找以前存储的值,如果不存在则返回null, setAttribute(“名称”,对象):设置属性 removeAttribute (“名称”):移除属性
3:销毁session:
让session过期或调用invalidate()强制失效
25._FilterConfig__接口用于在过滤器初始化时由web容器向过滤器传送初始化配置参数,并传入到过滤器对象的init方法中。
26.自定义过滤器可以用_@WebFilter注解__或者web.xml文件配置进行注解。
27.Cookie必须以_键值对_的形式存在。
【什么是Cookie】
服务器向客户端发送Cookie时,会在HTTP响应头字段中增加Set-Cookie响应头字段。
Set-Cookie: user=China; Path=/;
- user表示Cookie的名称
- China表示Cookie的值
- Path表示Cookie的属性
需要注意的是,Cookie必须以键值对的形式存在,其属性可以有多个,但这些属性之间必须用分号(;)和空格分隔。
28.在web应用程序中,_过滤器__介于Servlet之前,既可以拦截、过滤浏览器的请求,也可以改变浏览器的响应。
在web应用程序中,过滤器介于Servlet之前,既可以拦截、过滤浏览器的请求,也可以改变浏览器的响应。它在服务器端与客户端起到了一个中间件的作用,对二者之间的数据信息进行过滤。
29.在web系统中,__监听器_就是应用监听事件来监听请求中的行为而创建的一组类。
在web系统中,监听器就是应用监听事件来监听请求中的行为而创建的一组类。HttpServletRequest、HttpSession、ServletContext对象在web容器中遵循生成、运行、销毁这样的生命周期,当进行相关配置后,web容器就会调用监听器上的方法,进行对应的事件处理。
30.在Web应用中当用户通过浏览器访问服务器时,服务器会给客户发送一些信息,这些信息都保存在Cookie中。Cookie信息会被保存在_浏览器__的缓冲区中。
当用户第一次访问服务器时,服务器会在响应消息中增加Set-Cookie头字段,将用户信息以Cookie的形式发送给浏览器。一旦用户浏览器接受了服务器发送的Cookie信息,就会将它保存在浏览器的缓冲区中,这样,当浏览器后续访问该服务器时,都会在请求消息中将用户信息以Cookie的形式发送给Web服务器,从而使服务器端分辨出当前请求是由哪个用户发出的。