1、
下面选项中, 可用于获取Web应用的初始化参数的所有参数名的方法是(A)
1分
• A、getInitParameterNames()
• B、getInitParameter(String name)
• C、getInitParameter()
• D、getParameter(String name)
2、
下面关于客户端访问Tomcat服务器中的某个静态HTML文件时的说法中,正确的是(B)
1分
• A、直接访问HTML等静态资源
• B、先访问缺省Servlet,由缺省Servlet再决定定位静态资源
• C、先访问HTML静态资源,再访问缺省Servlet
• D、以上说法都不对
3、
HttpServlet类中,用来处理POST请求的方法是( C)
1分
• A、doHead
• B、doGet
• C、doPost
• D、doPut
4、
下面选项中, 配置整个Web应用的初始化参数名为companyName,值为itcast,写法正确的是(C)
1分
• A、 companyName itcast
• B、 companyName itcast
• C、 companyName itcast
• D、 itcast companyName
5、
下面选项中, 用于设置ServletContext的域属性的方法是(C)
1分
• A、setAttribute(String name,String obj)
• B、setParameter(String name,Object obj)
• C、setAttribute(String name,Object obj)
• D、setParameter (String name,Object obj)
6、
关于一个web.xml中可以配置的监听器的个数,正确的是(D)
1分
• A、0个
• B、1个
• C、0个或1个
• D、0个或多个
7、
下面选项中,与web应用有相同的生命周期的是(C)
1分
• A、Servlet
• B、ServletConfig
• C、ServletContext
• D、GenericServlet
8、
下面选项中, 用于根据指定名称获取ServletContext的域属性值的方法是(B)
1分
• A、String getAttibute(String name)
• B、Object getAttibute(String name)
• C、String getAttibute(Object name)
• D、Object getAttibute(Object name)
9、
下列类和接口中,哪个用于封装servlet的配置信息( C )
1分
• A、Servlet
• B、ServletContext
• C、ServletConfig
• D、GenericServlet
10、
下列关于作用的说法中,正确的是(A)
1分
• A、用于映射Servlet对外访问的虚拟路径
• B、指定Servlet类的路径
• C、设置Servlet名称
• D、以上都不对
11、
下面选项中, 用于根据指定名称删除ServletContext匹配的域属性的方法是(C)
1分
• A、void remove(String name)
• B、void removeAttribute(Object name)
• C、void removeAttribute(String name)
• D、Object removeAttribute(String name)
12、
下面选项中, 用于根据虚拟路径得到文件的真实路径的方法是(A)
1分
• A、String getRealPath(String path)
• B、URL getResource(String path)
• C、Set getResourcePaths(String path)
• D、InputStream getResourceAsStream(String path)
13、
在编写Servlet类时,可以继承父类并与协议无关的对象是(B)
1分
• A、Servlet
• B、GenericServlet
• C、HttpServlet
• D、ServletContext
14、
以下哪一个类可以获取Servlet的初始化参数(C)
1分
• A、Servlet
• B、ServletContext
• C、ServletConfig
• D、GenericServlet
15、
下面获取初始化参数encoding的写法中,正确的是(D)
1分
• A、Object obj = getInitParameter(String name)
• B、String encode = getInitParameterNames(String name)
• C、Enumeration enumers = getInitParameterNames()
• D、String encode = getInitParameter(String name)
16、
已知web.xml中存在如下配置:
2
下面的说法,正确的是(B)
1分
• A、在空闲状态下,2秒后将导致session对象销毁
• B、在空闲状态下,2分钟后将导致session对象销毁
• C、在空闲状态下,2毫秒后将导致session对象销毁
• D、在空闲状态下,2小时后将导致session对象销毁
17、
LoginServlet是一个Servlet类,代码如下
public class LoginServlet extends ___________ {
public void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
…
}
public void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
…
}
}
在下划线处应填写(B)
1分
• A、Servlet
• B、HttpServlet
• C、GenericServlet
• D、Cookie
18、
开发中创建了一个Servlet,该Servlet重写了其父类的doGet()和doPost()方法,那么其父类可能是( D)
1分
• A、RequestDispatcher
• B、HttpServletResponse
• C、HttpServletRequest
• D、HttpServlet
19、
下面选项中,用于返回一个Enumeration对象并包含所有的初始化参数名的方法是(D)
1分
• A、String getInitParameter(String name)
• B、Object getInitParameter(String name)
• C、String getInitParameterNames(String name)
• D、Enumeration getInitParameterNames()
20、
下面选项中, 用于实现一个Web应用中的所有Servlet共享数据的对象是(B)
1分
• A、HttpSession
• B、ServletContext
• C、ServletConfig
• D、ServletRequest
21、
下面选项中,可以创建 ServletConfig对象的是(D)
1分
• A、客户端
• B、浏览器
• C、Servlet
• D、Web容器
22、
下面关于配置Web应用的缺省Servlet的说法中,正确的是(B)
1分
• A、可以将Servlet的映射路径配置为
• B、可以将Servlet的映射路径配置为/
• C、可以将Servlet的映射路径配置为
• D、可以将Servlet的映射路径配置为//
23、
在HttpServletRequest对象中,用于获取表单参数值的方法是( C )。
1分
• A、getQuaryString()
• B、getPathInfo()
• C、getParameter()
• D、getAttribute()
24、
下列关于ServletContext的说法中,错误的是( B )。
1分
• A、ServletContext对象用来保存当前Web应用中的所有信息
• B、在一个Web应用中可以有多个ServletContext对象。
• C、ServletContext接口封装了获取当前Web应用中资源文件的方法。
• D、ServletContext对象中保存的属性可以被Web应用中的所有Servlet访问。
25、
下面关于配置整个Web应用的初始化参数的说法中,正确的是(B)
1分
• A、使用来配置
• B、使用来配置
• C、使用来配置
• D、使用来配置
26、
下面选项中配置参数名为name,它的值为youjun,以下正确的配置是(C)
1分
• A、 name</param-name youjun
• B、 < name>name</name youjun
• C、 name</param-name youjun
• D、 name</param-name youjun </init- parameter>
27、
下面选项中,Servlet配置中代表当前Web应用程序的根目录的是(D)
1分
• A、
• B、//
• C、*
• D、/
28、
下列关于ServletConfig对象的说法中,正确的是( A )。
1分
• A、ServletConfig对象可以用来获取Servlet的配置信息。
• B、ServletConfig对象可以实现Servlet信息的共享。
• C、ServletConfig对象保存的信息是通过service()方法传递给Servlet的
• D、ServletConfig对象可以读取web.xml文件中所有的信息。
29、
下面关于Servlet配置信息的选项中,用来指定Servlet完整类名的是(B)
1分
• A、
• B、
• C、
• D、
30、
下面选项中,关于统计网站当前在线人数的计数器count变量应该保存的域范围是(C)
1分
• A、request
• B、session
• C、application
• D、page
多选题
31、
下面选项中, 属于元素的子元素是(CD)
2分
• A、
• B、
• C、
• D、
32、
下面方法中,用于获取ServletContext对象的方法是(AB)
2分
• A、getServletConfig().getServletContext()
• B、getServletContext()
• C、getServlet().getServletContext()
• D、response.getServletContext()
33、
下面选项中,属于web.xml文件中标签包含的子标签的是 (ABCD)
2分
• A、
• B、
• C、
• D、
34、
阅读下面的代码:
TestServlet01
cn.itcast.chapter04.servlet.TestServlet01
TestServlet01
/TestServlet01
TestServlet01
/Test01
下面选项中,可以访问chapter04应用下该Servlet的是(AC)
2分
• A、http://localhost:8080/chapter04/TestServlet01
• B、http://localhost:8080/chapter04/servlet/TestServlet01
• C、http://localhost:8080/chapter04/Test01
• D、http://localhost:8080/chapter04/servlet/Test01
35、
下面关于Servlet的多重映射的说法中,正确的是 (AB)
2分
• A、可以配置多个来实现
• B、可以在一个配置多个来实现
• C、可以在一个配置多个来实现
• D、以上都不正确
36、
下列选项中能正确实现一个servlet的方式有( ABC )(多选)
2分
• A、继承javax.servlet.http.HttpServlet类
• B、实现javax.servlet.Servlet接口
• C、继承javax.servlet. GenericServlet 类
• D、自定义一个类,命名为Servlet
37、
下面关于Servlet中url的配置方式,正确的是(ABD) (多选)
2分
• A、/my
• B、/my/*
• C、/.do
• D、.do
38、
下列关于servlet的说法中,正确的是(BC )(多选)
2分
• A、多个用户同时访问一个servlet时,也会为这个servlet创建多个实例
• B、当servlet对象被销毁时,由servlet容器调用destroy()方法释放资源
• C、servlet容器调用destroy()方法之后,它就再也不会调用这个servlet对象的service()方法了
• D、在servlet的一个生命周期中,service ()方法只会被调用一次
39、
下列选项中,可以填入横线处的是(BD) (多选)
LoginServlet
com.itcast.youjun.servlet.LoginServlet
LoginServlet
________
2分
• A、LoginServlet
• B、/LoginServlet/*
• C、loginServlet
• D、/loginServlet
40、
HttpServlet中定义的doGet和doPost方法的参数类型有哪些?(BC)
2分
• A、ServletRequest
• B、HttpServletRequest
• C、HttpServletResponse
• D、ServletResponse
56、
在web.xml文件中,/xxxxServlet中的第一个‘/’表示【当前Web应用程序的根目录】
57、
一个web.xml中可以配置监听器的个数是零个或【多个】
58、
在Servlet容器启动每一个web应用时,就会创建一个唯一的【ServletContext】对象,该对象和web应用具有相同的生命周期。
59、
ServletConfig对象是由 【Web容器(或Tomcat)】创建出来的。
60、
在RequestDispatcher接口中,实现请求转发的方法是【forward()】
61、
在Servlet开发中,实现了多个Servlet之间数据共享的对象是【ServletContext】
62、
已知监听器已配置好,工程部署并重新启动Web服务器,此时ServletContextListener中的 【contextInitialized()】方法将被调用。
63、
Servlet容器启动时,会为每个Web应用创建一个唯一的【ServletContext】对象代表当前Web应用。
64、
要配置Web应用的缺省Servlet,可以将Servlet的映射路径配置为。【/或正斜线】
65、
在web.xml文件中配置的初始化参数,可以通过 【ServletConfig】对象来读取。
1、
下列关于使用request.setAttribute()保存数据的说法中,正确的是(B )
1分
• A、不能共享
• B、可以在本次请求中共享
• C、可以在所有请求中共享
• D、不同客户端也可以共享
2、
如果请求消息中有多个指定名称的头字段,则有关getHeader(String name)方法返回值,说法正确的是( C )
1分
• A、多个指定名称头字段的一组值
• B、最后一个头字段所对应的值
• C、第一个头字段所对应的值
• D、将返回null
3、
访问如下的URL地址:
http://www.itcast.cn/HelloServlet?name=youjun&name=itcast&age=30
则在HelloServlet可以得到所有参数名的方法是( B )
1分
• A、request. getParameterMap();
• B、request. getParameterNames();
• C、request. getParameter ();
• D、request. getParameterValues();
4、
如果想要将页面传递来的用户名username为张三的数据存放在Requset对象中,以下哪种方式可以实现(C)
1分
• A、String username=request.getParameter(“张三”);
• B、String username=(String) request.getAttribute(“张三”);
• C、request.setAttribute(“username”, “张三”);
• D、request.removeAttribute(“张三”);
5、
下列关于HttpServletResponse对象的创建,说法正确的是( A )
1分
• A、由Servlet容器负责创建,对于每个HTTP请求的响应,Servlet容器都会创建一个HttpServletResponse对象
• B、由Java Web应用的Servlet或JSP组件创建,当Servlet或JSP组件响应HTTP请求时,先创建HttpServletResponse对象
• C、由程序员通过编码形式创建,以传递请求的数据
• D、以上都不对
6、
HttpServletRequest接口中用于获取某个指定名称的参数值的方法是( D )
1分
• A、Object getParameter(Object name)
• B、Object getParameter(String name)
• C、String getParameter(Object name)
• D、String getParameter(String name)
8、
HttpServletResponse接口中定义的SC_OK常量表示请求成功,其状态码是(D )
1分
• A、500
• B、400
• C、404
• D、200
9、
阅读下列的代码
public void doGet(HttpServletRequest request,
HttpServletResponse response) throws
ServletException,IOException{
out.println(“hello kity!”);
}
若使Servlet运行的结果为hi kitty!,填写在空白处的代码为()
则应在此Servlet下划线处添加如下(A)代码。
1分
• A、PrintWriter out = response.getWriter();
• B、PrintWriter out request.getWriter();
• C、OutputStream out = response.getOutputStream();
• D、OutputStream out = request.getWriter();
10、
HttpServletResponse接口中表示状态码404,也就是没有找到资源的常量是(C)
1分
• A、SC_FORBIDDEN
• B、SC_OK
• C、SC_NOT_FOUND
• D、SC_CONFLICT
11、
下面关于实现重定向sendRedirect()方法的描述中,正确的是(B)
1分
• A、生成300响应码和Refresh响应头
• B、生成302响应码和Location响应头
• C、生成302响应码和Refresh响应头
• D、生成300响应码和Location响应头
12、
在HttpServletRequest接口中,getParameterValues(String name)方法的返回值类型是( B )
1分
• A、Object[]
• B、String[]
• C、String
• D、Object
13、
一次重定向过程中,浏览器会发出多少次服务器请求( B )
1分
• A、1次
• B、2次
• C、0次
• D、3次
15、
阅读下面代码片段:
Servlet1:
response.getWriter().write(“hello,servlet1”);
request.getRequestDispatcher().include(“Servlet2”);
Servlet2:
response.setHeader(“Refresh”,”1”);
response.getWriter().write(“,servlet2”);
下面选项中,关于运行结果说法正确的是( A )
1分
• A、正常显示:hello,servlet1,servlet2
• B、正常显示:hello,servlet1,servlet2,并且页面会不断刷新
• C、正常显示:,servlet2
• D、正常显示:hello,servlet1
16、
在HttpServletRequest接口中,用于获取所有请求头名称并返回Enumeration对象的方法是(D)
1分
• A、getMethod()
• B、getHeader(String name)
• C、getHeaders(String name)
• D、getHeaderNames()
17、
下面选项中,能实现转向另外一个Servlet的方法是( B )
1分
• A、运用javax.servlet.http.HttpServletRequest接口的 sendRedirect()方法
• B、运用javax.servlet.http.HttpServletResponse接口的sendRedirect()方法
• C、运用javax.servlet.RequestDispatcher接口的sendRedirect()方法
• D、运用javax.servlet.ResponseDispatcher接口的forward()方法
18、
HttpServletRequest接口中getParameterNames()方法的返回值类型是( C)
1分
• A、Object[]
• B、String[]
• C、Enumeration
• D、Object
7、
阅读下面代码片段:
Servlet1:
response.setContentType(“text/html;charset=gbk”);
response.getWriter().write(“传播智慧”);
request.getRequestDispatcher("/servlet/Servlet2")
.forward(request,response);
response.sendRedirect("/app/servlet/Servlet3");
Servlet2:
response.getWriter().write(“收获成长”);
请问当浏览器访问Servlet1时会有什么样的输出( D )
1分
• A、浏览器地址栏仍然保持为Servlet1,输出为“传播智慧收获成长”
• B、浏览器地址栏仍然保持为Servlet1,输出为“收获成长”
• C、浏览器地址栏仍然保持为Servlet1,输出为“传播智慧”
• D、服务器端报错
14、
阅读下面Servlet1类中的代码片段:
Servlet1:
response.getOutputStream().write(“传智”.getBytes(“gbk”));
response.getWriter().write(“播客”);
request.getRequestDispatcher("/Servlet2").forward(request,response);
如果使用浏览器访问Servlet1时会有什么结果( D )
1分
• A、浏览器输出 传智播客
• B、浏览器输出乱码
• C、浏览器输出播客
• D、服务器端报错
19、
阅读下面代码片段:
Servlet1:
response.setHeader(“Content-Type”,“text/html;charset=utf-8”);
response.getOutputStream().write(“传智”.getBytes(“utf-8”));
request.getRequestDispatcher(“/Servlet2”).forward(request,response);
Servlet2:
response.getOutputStream().write(“播客”.getBytes(“utf-8”));
当使用浏览器访问Servlet1时会什么结果( )
1分
• A、浏览器输出 “传智播客”均正常无乱码
• B、浏览器输出“传智”为乱码,输出“播客”正常
• C、浏览器输出“传智”正常,输出“播客”乱码
• D、浏览器输出“播客”正常
20、
在HttpServletRequest接口中, getContentType()方法的返回值类型为( B )
1分
• A、int
• B、String
• C、long
• D、double
21、
下面用于设置字符流输出文本采用UTF-8编码的选项中,正确的是( C )
1分
• A、response.setEncoding(“utf-8”);
• B、response.setCharacter (“utf-8”);
• C、response.setCharacterEncoding(“utf-8”);
• D、request.setCharacterEncoding(“utf-8”);
22、
在HttpServletRequest接口中,用于返回请求消息的实体部分的字符集编码的方法是( B )
1分
• A、getCharacter ()
• B、getCharacterEncoding()
• C、getEncoding()
• D、getHeader(String name)
24、
下列选项中,哪种请求方式的参数可以使用HttpServletRequest接口的getQueryString(D)方法获取到?
1分
• A、post
• B、delete
• C、put
• D、get
25、
HttpServletResponse接口中用于设置输出内容使用的字符编码的方法是( D )
1分
• A、setEncodingCharacter(String charset)
• B、setEncoding(String charset)
• C、setCharacter (String charset)
• D、setCharacterEncoding(String charset)
26、
在HttpServletRequest接口中,用于指定名称的头字段,并且返回结果为int类型的方法是(A)
1分
• A、getIntHeader(String name)
• B、getHeader(String name)
• C、getHeaders(String name)
• D、getHeaderNames()
27、
下列选项中,属于sendRedirect(java.lang.String url)方法所在接口的是( C )
1分
• A、HttpSession
• B、HttpServletRequest
• C、HttpServletResponse
• D、ServletResponse
28、
在HttpServletRequest接口中,用于获取一个指定头字段值的方法是( B )
1分
• A、getMethod()
• B、getHeader(String name)
• C、getHeaders(String name)
• D、getHeaderNames(String name)
• 输出
30、
在HttpServletRequest接口中,用于获取一个指定头字段的一组值的方法是( C )
1分
• A、getMethod()
• B、getHeader(String name)
• C、getHeaders(String name)
• D、getHeaderNames(String name)
31、
在HttpServletRequest接口中,用于获取请求行中资源名称的是( B )
1分
• A、getMethod()
• B、getRequestURI()
• C、getQueryString()
• D、getProtocol()
32、
下列选项中,属于HttpServletResponse接口中定义的表示请求成功的常量是( B )
1分
• A、SC_FORBIDDEN
• B、SC_OK
• C、SC_NOT_FOUND
• D、SC_CONFLICT
33、
在HttpServletRequest接口中,用于获取Servlet映射路径的方法是( D )
1分
• A、getMethod()
• B、getPathInfo()
• C、getContextPath()
• D、getServletPath ()
34、
RequestDispatcher接口中能实现请求包含的方法是( B )
1分
• A、forward(ServletRequest request,ServletResponse response)
• B、include(ServletRequest request,ServletResponse response)
• C、include(ServletResponse response,ServletRequest request)
• D、sendRedirect(String url)
35、
下列关于计算机中数据的存储形式,正确的是( B )
1分
• A、字符文本数据
• B、二进制数据
• C、字符文本数据和二进制数据都可以
• D、字符文本数据和二进制数据都不可以
36、
阅读下面代码片段:
Servlet1:
request.setAttribute("username", "张三"); String username=(String) request.getAttribute("username"); System.out.println("username:"+username); request.setAttribute("username", null); username=(String) request.getAttribute("username"); System.out.println("username:"+username);
当使用浏览器访问Servlet1时控制台会输出什么结果( B )
1分
• A、张三 张三
• B、张三 null
• C、null 张三
• D、null null
37、
下面选项中, 用于设置响应消息的实体内容大小的方法是( B )
1分
• A、setLength()
• B、setContentLength()
• C、setContentSize()
• D、setSize()
38、
在HttpServletRequest接口中,用于获取请求行中的协议名和版本的方法是(D)
1分
• A、getMethod()
• B、getRequestURI()
• C、getQueryString()
• D、getProtocol()
39、
下面=关于request. setCharacterEncoding()方法的描述中,正确的是( B )
1分
• A、设置request对象的解码方式只对get请求方式有效
• B、设置request对象的解码方式只对post请求方式有效
• C、设置request对象的解码方式对get与post请求方式有效
• D、设置request对象的解码方式只对get请求方式有效
40、
下面选项中,使用get方式提交name=“传智播客”时,得到结果中没有乱码的是( B )
1分
• A、String name = request.getParameter(“username”); request.setCharacterEncoding(“gbk”);
• B、String name = request.getParameter(“username”);name=new String(name.getBytes(“iso8859-1”),“gbk”);
• C、String name = request.getParameter(“username”); name=new String(name.getBytes("gbk "),“iso8859-1”);
• D、request.setCharacterEncoding(“gbk”); String name = request.getParameter(“name”);
41、
下面选项中,属于HttpServletResponse接口中定义的用于实现请求重定向的方法是( C )
1分
• A、Redirect()
• B、send ()
• C、sendRedirect()
• D、forward()
42、
在HttpServletResponse对象中,getWriter()方法直接输出的是( A )
1分
• A、字符文本数据
• B、二进制数据
• C、字符文本数据和二进制数据都可以
• D、字符文本数据和二进制数据都不可以
23、
阅读下面Servlet的doGet()方法中代码片段:
String data=“中国”;
response.setCharacterEncoding(“utf-8”);
response.setHeader(“Content-Type”,“text/html;charset=utf-8”);
PrintWriter out = response.getWriter();
out.println(data);
当打开浏览器直接访问时看到的结果,说法正确的是( A )
1分
• A、正常输出:中国
• B、输出乱码
• C、出现500异常
• D、页面没有任何输出
43、
阅读下面Servlet的doGet()方法中代码片段:
String data=“中国”;
response.setCharacterEncoding(“utf-8”);
PrintWriter out = response.getWriter();
out.println(data);
下列关于浏览器访问结果的描述中,正确的是(B)
1分
• A、正常输出:中国
• B、输出乱码
• C、出现500异常
• D、页面没有任何输出
44、
在HttpServletRequest接口中用于获取HTTP请求消息中的请求方式的方法是( A )
1分
• A、getMethod()
• B、getRequestURI()
• C、getQueryString()
• D、getProtocol()
45、
下面选项中,用于获取请求消息中所有头字段及对应值的代码片段是( )
1分
• A、List headerNames = request.getHeaderNames(); while (headerNames.hasMoreElements()) { String headerName = (String) headerNames.nextElement(); String headerValue = request.getHeader(headerName); out.print(headerName + " : " +headerValue + “
”); }
• B、Enumeration headerNames = request.getHeaderName(); while (headerNames.hasMoreElements()) { String headerName = (String) headerNames.nextElement(); String headerValue = request.getHeader(headerName); out.print(headerName + " : " +headerValue + “
”); }
• C、Enumeration headerNames = request.getHeaderNames(); while (headerNames.hasMoreElements()) { String headerName = (String) headerNames.nextElement(); String headerValue = request.getHeader(headerName); out.print(headerName + " : " +headerValue + “
”); }
• D、Enumeration headerNames = request.getHeaders(); while (headerNames.hasMoreElements()) { String headerName = (String) headerNames.nextElement(); String headerValue = request.getHeader(headerName); out.print(headerName + " : " +headerValue + “
”); }
多选题
46、
下列选项中,属于RequestDispatcher接口中方法的有( )(多选)
2分
• A、sendRedirect()方法
• B、include()方法
• C、forward()方法
• D、dispatcher()方法
47、
下面选项中,能取到request.setAttribute(“name”,”itcast”)中值的有( )(多选)
2分
• A、重定向到另一个Servlet时,另一个Servlet中可以获取
• B、转发到另一个Servlet时,另一个Servlet中可以获取
• C、包含另一个Servlet时,另一个Servlet中可以获取
• D、转发与重定向到另一个Servlet时,都可以获取
48、
以下关于ServletRequest接口中操作属性的方法,说法正确的是()(多选)
2分
• A、setAttribute()方法用于将一个对象与一个名称关联后存储ServletRequest对象中
• B、getAttribute()方法用于从ServletRequest对象中返回指定名称的属性对象
• C、removeAttribute()方法用于从ServletRequest对象中删除指定名称的属性
• D、getAttributeNames()方法用于返回一个包含ServletRequest对象中的所有属性名的Eumeration对象,如果在请求中没有属性,这个方法将返回null
getAttributeNames()方法返回请求中所有可用的属性的名字。如果在请求中没有属性,这个方法将返回一个空的枚举集合
49、
服务器使用如下哪条语句发送数据有可能有乱码( )(多选)
2分
• A、response.getOutputStream().write(“中国”.getBytes(“utf-8”));
• B、response.getWriter().write(“中国”);
• C、response.setCharacterEncoding(“utf-8”); response.setHeader(“Content-Type”,”text/html;charset=utf-8”); response.getWriter().write(“中国”);
• D、response.setContentType(“text/html;charset=utf-8”); response.getWriter().write(“中国”);
50、
HttpServletResponse接口中可以有效解决乱码问题的方法是( )(多选)
2分
• A、addHeader()
• B、setContetType()
• C、setLoacale()
• D、setCharacterEncoding()
51、
下列关于请求与包含,说法正确的是( )(多选)
2分
• A、请求转发和请求包含都是服务器端技术,与浏览器没有任何关系
• B、请求包含可以实现将多个资源的数据合并后输出
• C、利用好请求包含,可以将多个输出内容中相同的部分提取出来,方便开发
• D、请求包含只能包含动态web资源,不能包含HTML文件
52、
下列关于乱码的描述中,正确的是( )(多选)
2分
• A、Content-Type可以设置浏览器打开页面时的编码。
• B、tomcat服务器默认使用ISO8859-1编码解码请求参数,如果浏览器发送请求参数时,使用的编码集不同,就会有乱码。
• C、request.setCharacterEconding方法只对请求体内容起作用,而ge方式提交的参数是附加在URL后的,所以此方法只能解决POST乱码
• D、对于get方式提交的请求参数,我们需要自己手动的经过将乱码先编码再解码的过程解决乱码
53、
下面关于response的说法中,正确的( )(多选)
2分
• A、response是代表响应的对象,当需要向浏览器输出数据时只能调用response中的getWriter()方法获取连接到浏览器的流
• B、利用Response输出数据的时候,并不是直接将数据写给浏览器,而是写到了Response的缓冲区中
• C、使用完流后要养成关闭流的习惯,所以在使用完Response获取的OutputStream或者Writer后必须将其关闭防止浪费资源
• D、service()方法返回后,服务器会自己检查Response获取的OutputStream或者Writer是否关闭,如果没有关闭,服务器自动帮你关闭,一般情况下不要自己关闭这两个流
54、
阅读下面代码片段:
response.setContentType(“text/html;charset=utf-8”);
下列选项中,与上述代码功能等效的是( )(多选)
2分
• A、response.setCharacterEncoding(“utf-8”);
• B、request.setCharacterEncoding(“utf-8”);
• C、response.setHeader(“Content-Type”,“text/html;charset=utf-8”);
• D、response.setHeader(“Content-Type”,“charset=utf-8”);
55、
下列关于request和response的说法中,错误的是( )
2分
• A、javaweb开发是基于HTTP协议进行的,javaweb中使用request代表请求对象,response代表响应对象
• B、request对象代表请求,response对象代表响应,这两个对象都是由浏览器创建后发送给服务器的
• C、HTTP协议只规定了浏览器和服务器之间如何通信,而request和response对象是由javaee规范规定的、由javaweb容器负责创建的
• D、HTTP协议是javaweb开发的基石,如response中提供的请求重定向的方法和request中提供的转发和包含方法就是基于HTTP协议进行的
56、
HttpServletResponse接口中用于设置各种头字段的方法是( )(多选)
2分
• A、addHeader()
• B、setHeader()
• C、addIntHeader()
• D、setIntHeader()
57、
下列关于请求转发和重定向的说法中,正确的是( ABCD )(多选)
2分
• A、请求转发和重定向都可以实现访问一个资源时转向当前应用资源
• B、请求转发是一次请求一次响应,而重定向为两次请求两次响应
• C、一般情况下应该使用请求转发,减少浏览器对服务器的访问,减轻服务器压力
• D、如果需要改变浏览器的地址栏,或更改浏览器的刷新按钮的功能时需要使用重定向
58、
给定某Servlet程序的片段如下所示:
public void doGet(HttpServletRequest request,
HttpServletResponse response) throws IOException,
ServletException {
RequestDispatcher rd =
request.getRequestDispatcher(“____________”);
rd.forward(request, response);
}
上面横线中填入以下路径,错误的有( )(多选)
2分
• A、/user/login.jsp
• B、/welcome.txt
• C、www.itcast.cn
• D、http:// www.itcast.cn
59、
下列选项中,属于HttpServletResponse类中发送状态码的方法是( )(多选)
2分
• A、setStatus(int status)
• B、setStatus(String status)
• C、setError(String status)
• D、setError(int status)
60、
下面选项中,服务器发送数据有可能产生乱码的是( )(多选)
2分
• A、response.getOutputStream().write(“中国”.getBytes(“utf-8”));
• B、response.getWriter().write(“中国”);
• C、response.setCharacterEncoding(“utf-8”); response.setHeader(“Content-Type”,”text/html;charset=utf-8”); response.getWriter().write(“中国”);
• D、response.setContentType(“text/html;charset=utf-8”); response.getWriter().write(“中国”);
单选题
1、
下面选项中,用于获取Cookie值的方法是(B)
1分
• A、Object getValue()
• B、String getValue ()
• C、String getValue (String str)
• D、Object getValue (String str)
2、
下列选项中,能够创建Cookie,并将当前时间作为值发送给客户端的代码是(D)
1分
• A、Cookie cookie = new Cookie(“lastAccess”,new Date().toLocaleString()); request.addCookie(cookie);
• B、Cookie cookie = request.getCookies()[0]; response.addCookie(cookie);
• C、Cookie cookie = request.getCookies()[0]; request.addCookie(cookie);
• D、Cookie cookie = new Cookie(“lastAccess”,new Date().toLocaleString()); response.addCookie(cookie);
3、
下面选项中,关于Cookie的说法正确的是(C)
1分
• A、Cookie一旦创建,名称和对应的值都不能更改
• B、Cookie一旦创建,名称和对应的值都可以更改
• C、Cookie一旦创建,名称不能更改,但值可以更改
• D、Cookie一旦创建,名称可以更改,但值不能更改
4、
下列选项中,能够使浏览器在访问chapter06工程资源时都会回送Cookie信息的正确写法是(A)
1分
• A、cookie.setPath("/chapter06")
• B、cookie.setPath(“chapter06”)
• C、cookie.seDomain("/chapter06")
• D、cookie.setDomain(“chapter06”)
5、
下面选项中,可以获取到代表当前会话的Session对象的方法是(A)
1分
• A、request.getSession();
• B、request.getSession(false);
• C、new HttpSession();
• D、HttpSession.newInstance(request);
6、
下列选项中,关于Cookie中保存的数据,说法正确的是( B )
1分
• A、保存在服务器中
• B、保存在客户端浏览器中
• C、保存在数据库中
• D、以上说法都不对
7、
下列选项中,哪个是设置Set-Cookie响应头字段正确的书写格式?( C)
1分
• A、Set-Cookie; user=itcast; Path=/;
• B、Set-Cookie user=itcast; Path=/;
• C、Set-Cookie: user=itcast; Path=/;
• D、Set-Cookie: user=itcast Path=/;
8、
阅读web.xml中下面配置代码:
30
可以得知,Tomcat服务器的默认会话超时时间是(B)
1分
• A、30秒
• B、30分钟
• C、30毫秒
• D、30小时
9、
下面选项中,当存在Session对象直接返回,否则返回null的方法是(C)
1分
• A、request.getSession();
• B、request.getSession(true);
• C、request.getSession(false);
• D、response.getSession();
10、
下面选项中,哪个方法可以用于获取Cookie的值(B)
1分
• A、Object getValue()
• B、String getValue ()
• C、String getValue (String str)
• D、Object getValue (String str)
11、
下面选项中,用于获取Cookie名称的方法是(B)
1分
• A、Object getName()
• B、String getName()
• C、String getName(String str)
• D、Object getName(String str)
12、
下面选项中,哪个方法可以生成一个Cookie对象?(A)
1分
• A、Cookie c = new Cookie(“name”,”itcast”);
• B、Cookie c = request.getCookie(“name”);
• C、Cookie c = response.getCookie(“name”);
• D、Cookie c = session.getCookie(“name”);
13、
下面选项中,用于返回Session创建的时间的方法是(C)
1分
• A、request.getSession();
• B、request. getCreationTime();
• C、session. getCreationTime();
• D、response. getCreationTime();
14、
下面关于setMaxAge(int expires)方法参数默认值的描述中,正确的是(B)
1分
• A、默认值是1
• B、默认值是-1
• C、默认值是0
• D、默认值是无穷大
15、
下面关于setMaxAge(int expires)方法参数的描述中,正确的是(C)
1分
• A、参数代表的是cookie过期的毫秒数
• B、参数代表的是cookie过期的分钟数
• C、参数代表的是cookie过期的秒数
• D、参数代表的是cookie过期的纳秒数
16、
下面选项中,用于返回客户端最后一次发送与Session相关请求的时间,的方法是(C)
1分
• A、request.getSession();
• B、request. getCreationTime();
• C、session. getLastAccessedTime();
• D、response. getLastAccessedTime();
17、
下面选项中,能够实现将用户会话中的“counter”计数器的值增加1的选项是(C)
1分
• A、HttpSession session = request.getSession(true); int ival = session.getAttribute(“counter”); if(ival == null){ ival = 1; }else{ Ival = ival + 1; } session.setAttribute (“counter”, ival);
• B、HttpSession session = request.getSession (true); Integer ival = (Integer) session.getAttribute (“counter”); Session.setAttribute (“counter”, ival + 1);
• C、HttpSession session = request.getSession (true); Integer ival = (Integer) session.getAttribute (“counter”); if(ival == null){ Ival = new Integer (1); } else { Ival = new Integer (ival.intValue () + 1); } session.setAttribute (“counter”, ival);
• D、HttpSession session = request.getSession (); int ival = session.getAttribute(“counter”); if (ival == null){ ival = 1; } else { ival = ival + 1; }session.setAttribute (“counter”, new Integer (ival));
18、
下列选项中,关于session保存数据的位置,说法正确的是(B)
1分
• A、数据保存在客户端
• B、数据保存在服务器端
• C、数据保存在客户端与服务器端各一份
• D、以上说法都不对
19、
下列选项中,重写URL的方法encodeURL(String url)所在的接口是(D)
1分
• A、HttpServletRequest
• B、HttpSession
• C、ServletContext
• D、HttpServletResponse
20、
下列选项中,能够正确创建Cookie对象的语句是(A)
1分
• A、Cookie c = new Cookie(“name”,”itcast”);
• B、Cookie c = request.getCookie(“name”);
• C、Cookie c = response.getCookie(“name”);
• D、Cookie c = session.getCookie(“name”);
21、
下列选项中,可以更改Cookie的存活时间的是(A)
1分
• A、cookie.setMaxAge(3600*24);
• B、cookie.setPath(“/app”);
• C、cookie.setDomain(“localhost”);
• D、cookie.setValue(“share”);
22、
在Java EE中,定义了getSession()方法的接口是(C)
1分
• A、HttpServlet
• B、HttpSession
• C、HttpServletRequest
• D、HttpServletResponse
23、
下列选项中,哪个是服务器向客户端发送Cookie的本质?( A )
1分
• A、在HTTP响应头字段中增加Set-Cookie响应头字段
• B、在HTTP响应头字段中增加Cookie响应头字段
• C、在HTTP请求头字段中增加Cookie响应头字段
• D、在HTTP请求头字段中增加Set-Cookie响应头字段
24、
给定servletA的代码片段如下所示:
public void doPost(HttpServletRequestrequest,
HttpServletResponse response) throws
ServletException,IOException{
String id=“itcast”;
}
Servlet B与servlet A同在一个有效的会话范围内,当把请求转发给Servlet B后,使B能够获得“itcast”值,下划线处应填入( A)。
1分
• A、request.getSession().setAttribute(“ID”,id);
• B、request.getSession().getAttribute(“ID”,id);
• C、request.getSession().setParameter(“ID”,id);
• D、request.getSession().getParameter(“ID”,id);
25、
下列选项中,用于对超链接和form表单中的action属性中设置的URL进行重写的方法是(A)
1分
• A、encodeURL(String url)
• B、encodeRedirectURL(String url)
• C、encodeForwardURL(String url)
• D、encodeRedirect (String url)
26、
下面选项中,用于设置当前HttpSession对象可空闲的以秒为单位的最长时间的方法是(D)
1分
• A、request. setMaxInactiveInterval ();
• B、request. getCreationTime();
• C、response. setMaxInactiveInterval ();
• D、session. setMaxInactiveInterval ();
27、
下列选项中,客户端在一次会话过程中可以发送的请求次数是(D)
1分
• A、1次
• B、0次
• C、2次
• D、多次
28、
下面选项中,用于判断当前HttpSession对象是否是新创建的方法是(D)
1分
• A、request. isNew();
• B、request. isTrue()
• C、response. isTrue();
• D、session. isNew();
29、
下面关于setMaxAge(0)方法的描述中,正确的是(B)
1分
• A、通知服务器立即删除这个Cookie信息
• B、通知浏览器立即删除这个Cookie信息
• C、通知浏览器再等1秒后删除这个Cookie信息
• D、通知服务器再等1秒后删除这个Cookie信息
30、
下面选项中,哪个方法用于设置Cookie的有效路径(B)
1分
• A、String setPath(String uri)
• B、void setPath(String uri)
• C、void setDomain(String uri)
• D、String setDomain(String uri)
31、
下列关于Cookie和Session的描述中,错误的是(D)
1分
• A、Cookie和HttpSession是保存会话相关数据的技术,其中Cookie将信息存储在浏览器端是客户端技术,Session将数据保存在服务器端是服务器端技术
• B、HttpSession会话对象的默认保持时间可以修改
• C、HttpSession默认是基于Cookie运作的
• D、浏览器可以接受任意多个Cookie信息保存任意长的时间。
32、
下列选项中,能够返回与当前HttpSession对象关联的会话标识号的方法是(C)
1分
• A、request.getSession();
• B、request.getId();
• C、session.getId();
• D、response.getId();
33、
下列选项中,Cookie类所在的完整包的写法是(B)
1分
• A、javax.servlet.Cookie
• B、javax.servlet.http.Cookie
• C、java.servlet.http.Cookie
• D、java.servlet.Cookie
34、
下列对于setMaxAge(-1)方法的描述中,正确的是(C)
1分
• A、表示通知浏览器保存这个Cookie信息
• B、表示通知浏览器立即删除这个Cookie信息
• C、表示当浏览器关闭时,Cookie信息会被删除
• D、以上都不正确
35、
阅读下面代码:
Cookie cookie = new Cookie(“myCookie”,”xxxx”);
response.addCookie(cookie);
path为 / ,由localhost发送Cookie信息,则在下面选项中横线处填写下列哪段代码可以删除名称为myCookie的对象(C)
1分
• A、cookie.delete();
• B、cookie.setMaxAge(0);
• C、cookie.setPath(“/”);cookie.setMaxAge(0);
• D、cookie.setDomain(“localhost”);cookie.setPath(“/”);cookie.setMaxAge(0);
36、
下面关于Cookie的domain属性默认取值的说法中,正确的是(C)
1分
• A、默认值为localhost
• B、默认值为/
• C、默认值为当前主机名
• D、默认值为-1
37、
下面选项中,哪个方法可以用于设置Cookie的有效域(C)
1分
• A、String setPath(String pattern)
• B、void setPath(String pattern)
• C、void setDomain(String pattern)
• D、String setDomain(String pattern)
38、
下面选项中,用于返回当前HttpSession对象所属于的WEB应用程序对象的方法是(B)
1分
• A、request. getServletContext ();
• B、session. getServletContext ();
• C、response. getServletContext ();
• D、session. getApplication ();
39、
下面选项中,关于获得HttpSession对象的说法正确的是(B)
1分
• A、用new语句创建一个HttpSession对象
• B、调用ServletRequest对象的getSession()方法
• C、调用ServletConfig对象的getSession()方法
• D、以上说法都不对
40、
下面关于Cookie的path属性有效性的说法中,正确的是(B)
1分
• A、只对当前访问路径所属的目录有效
• B、只对当前访问路径所属的目录及其子目录有效
• C、只对当前访问路径所属的子目录有效
• D、只对其它目录有效(当前访问路径所属的目录及其子目录无效)
多选题
41、
下列选项中,属于Servlet常用会话技术的是( AB )
2分
• A、Cookie
• B、Session
• C、Application
• D、request
42、
下面选项中,关于SessionID的说法正确的是(ABD) (多选)
2分
• A、每个HttpSession对象都有唯一的Session ID
• B、SessionID 由Servlet容器创建
• C、SessionID必须保存在客户端的cookie文件中
• D、Servlet容器会把Session ID作为Cookie或者URL的一部分发送到客户端
43、
下列选项中,属于URL重写的方法是(AB) (多选)
2分
• A、encodeURL(String url)
• B、encodeRedirectURL(String url)
• C、encodeForwardURL(String url)
• D、encodeRedirect (String url)
44、
下面关于URL重写的说法中,正确的是(ABC) (多选)
2分
• A、URL重写可以解决浏览器禁用cookie导致的Session无法使用的问题
• B、URL重写会将sessionID附加在重写的URL后,当用户点击该超链接访问服务器时,request.getSession()方法可以从请求URL中分析出sessionID从而找到对应的Session
• C、如果服务器发现浏览器并没有禁用cookie,那么URL重写操作将不再进行
• D、调用URLEncoder.encode()方法可以进行URL重写操作
45、
下面选项中,最合适放在session域中的是(BC) (多选)
2分
• A、统计服务器中所有Servlet一共被访问过多少次的计数器
• B、当前用户的登录状态
• C、发送给浏览器的验证码信息,且需要在服务器端进行验证
• D、在Servlet中查询的结果,需要在JSP页面中进行数据展示
46、
下面关于HttpSession的说法,正确的是(AB) (多选)
2分
• A、Servlet容器负责创建HttpSession对象
• B、每个HttpSession对象都有唯一的ID
• C、客户端浏览器负责为HttpSession分配唯一的ID
• D、HttpSession对象的ID值,由程序进行分配
47、
下列关于HttpSession对象的描述中,说法正确的是(AC) (多选)
2分
• A、如果两次访问时间间隔超过session定义的非活动时间间隔,则HttpSession对象将失效
• B、用户每次做出请求时都会创建一个新的会话
• C、同一个浏览器做出的多个请求可以访问同一个会话对象
• D、SessionID保存在服务器端,HttpSession对象保存在客户的浏览器
48、
下列选项中,关于HttpSession的说法,正确的是(AD) (多选)
2分
• A、HttpSession.getAttribute(String param)方法的返回类型是Object
• B、HttpSession.getAttribute(String param)方式的返回类型是String
• C、调用HttpSession的setAttribute(“key”,”value”)方法时,如果这个会话中对应键key已经有一个值,就会导致抛出异常
• D、调用HttpSession的setAttribute(“key”,”value”)方法时,如果这个会话中对应键key已经有一个值,就会用新值替换原先的值
49、
下面选项中,HttpServletRequest定义了用于获取Session对象的方法是(AC) (多选)
2分
• A、req.getSession()
• B、req.getSession(false)
• C、req.getSession(true)
• D、req.createSession()
50、
给定一个Servlet的代码片段如下所示
Public void doGet(HttpServletRequest request,HttpServletResponse resonse)throws ServletException,IOException{
ArrayList list=new ArrayList();
HttpSession session =request.getSession();
Session.setAttribute(“list”,list);
}
要取出session中的值,下划线处的代码可以是(AC) (多选)
2分
• A、Object o=session.getAttribute(“list”);
• B、Object o=(ArrayList)session.getParameter(“list”);
• C、ArrayList list2=(ArrayList)session.getAttribute(“list”);
• D、ArrayList list2=session.getParameter(“list”)
51、
给定一个Servlet的代码片段如下所示:
public void doGet(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException{
String str = “world”;
HttpSession session = request.getSession();
session.setAttribute(“str”, str);
___________________
}
要取出session中的值,下划线处的代码可以是(BC) (多选)
2分
• A、String s = session.getParameter(“str”);
• B、String s = (String)session.getAttribute(“str”);
• C、Object o = session.getAttribute(“str”);
• D、Object o = (Object)session.getParameter(“str”);
52、
下列说法中正确的是(ABCD) (多选)
2分
• A、Cookie是基于HTTP协议中的Set-Cookie响应头和Cookie请求头进行工作的
• B、浏览器对Cookie具有严格的限制,一个网站能在浏览器中保存多少Cookie是有限制的
• C、默认情况下HttpSession是基于一个名称为JSESSIONID 的特殊Cookie工作的
• D、一个浏览器可能保存着多个名称为JSESSIONID的Cookie
53、
下列选项中,关于会话的说法正确的是(BD) (多选)
2分
• A、浏览器开始访问一个网站时,会话就开始了,服务器立即就会创建代表当前会话的Session
• B、如果服务器端执行了HttpSession对象的invalidate()方法,那么这个会话被销毁
• C、当客户端关闭浏览器进程,服务器端会探测到客户端关闭浏览器进程的行为,从而立即销毁相应的HttpSession对象
• D、当一个会话过期,服务器端会自动销毁这个会话
54、
下面关于Session域的说法中,正确的是(ACD) (多选)
2分
• A、Session域的作用范围为整个会话
• B、Session域中的数据只能存在30分钟,这个时间不能修改
• C、可以调用HttpSession的invalidate方法,立即销毁Session域
• D、当web应用被移除出web容器时,该web应用对应的Session跟着销毁
55、
下列关于URL重写的描述中,正确的是(ABD) (多选)
2分
• A、URL重写可以在URL地址后跟上JSESSIONID,浏览器即使禁用cookie也能在访问服务器时带回JSESSIONID的值,从而可以使用session
• B、response.encodeRedirectURL(java.lang.String url)和response. encodeURL(java.lang.String url)都可以实现URL重写。
• C、URL重写不需要对所有地址都重写。
• D、response. encodeURL(java.lang.String url)一旦发现浏览器带来了任何cookie信息就认为浏览器没有禁用cookie,就不会再对传入的URL进行URL重写了
1、
下面选项中,处理以.jsp为扩展名的URL访问请求的是(A)
1分
• A、JspServlet
• B、HttpJspBase
• C、JspSourceDependent
• D、HttpServlet
2、
下列选项中,哪个是正确的JSP注释格式?(D)
1分
• A、
• B、<%! 注释信息 %>
• C、<%= 注释信息 %>
• D、<%-- 注释信息 --%>
3、
下列选项中,哪个属性可以指明编译JSP文件时所继承的类?(B)
1分
• A、language
• B、extends
• C、import
• D、session
4、
下面选项中,可以被发送到浏览器段的输出内容是(D)
<%-- 第一种 --%>
<% //第二种 %>
<% /*第三种 */ %>
1分
• A、第一种
• B、第二种
• C、第三种
• D、第四种
5、
下列是page指令中的一些属性,其中,用于指明是否运行缓存的属性是(C)
1分
• A、session
• B、buffer
• C、autoFlush
• D、isThreadSafe
6、
下面选项中,属于pageContext提供的用于从四个域对象中查找属性的方法是(D)
1分
• A、setAttribute
• B、getAttribute
• C、removeAttribute
• D、findAttribute
7、
下列选项中,关于page指令用法的描述,错误的是(D)
1分
• A、<%@ page %>作用于整个JSP页面
• B、可以在一个页面中使用多个<%@ page %>指令
• C、为增强程序的可读性,建议将<%@ page %>指令放在JSP文件的开头,但不是必须的
• D、<%@ page %>指令中的属性只能出现一次
8、
下面关于include指令和jsp:include标签的区别描述,错误的是(C)
1分
• A、jsp:include标签实现动态包含,而include指令实现静态包含
• B、jsp:include标签运行时起作用,而include指令编译时起作用
• C、jsp:include标签被包含页面可以改变响应头,而include指令不改变响应头
• D、jsp:include标签被包含页面不可以改变响应头,而include指令可以改变响应头
9、
下列选项中,哪个属性可以指定JSP翻译成Servlet源文件中导入包或类?(C)
1分
• A、language
• B、extends
• C、import
• D、session
10、
下面选项中,关于jsp文件翻译后的Servlet源码中,它所继承的父类是(C)
1分
• A、HttpServlet
• B、JspServlet
• C、HttpJspBase
• D、HttpBase
11、
下列是page指令中的一些属性,其中,用于指定线程是否安全的属性是(D)
1分
• A、session
• B、buffer
• C、autoFlush
• D、isThreadSafe
12、
下面选项中,用于向客户端发送文本形式实体内容的JSP隐式对象是(B)
1分
• A、response
• B、out
• C、request
• D、print
13、
下列选项中,哪些是Tomcat服务器中jsp配置文件的存放目录(B)
1分
• A、Tomcat安装目录\ conf\server.xml
• B、Tomcat安装目录\ conf\web.xml
• C、Tomcat安装目录\ webapps\web.xml
• D、Tomcat安装目录\ conf\context.xml
14、
阅读下面JSP代码片段:
<%@ page language=“java” contentType=“text/html; charset=UTF-8” buffer=”none” %>
<%
out.println(“first line”);
response.getWriter().println(“second line”);
%>
上述代码的输出结果是(A)
1分
• A、second line first line
• B、first line second line
• C、first line
• D、second line
15、
访问如下jsp页面将会出现什么输出:(D)
<%@ page session=“false”%>
<%
session.setAttribute(“name”,“itcast”);
application.setAttribute(“name”,“itheima”);
%>
<%= session.getAttribute(“name”) %>
1分
• A、itcast
• B、itheima
• C、无输出
• D、Jsp不能被正确翻译,访问时服务器报错
16、
下列是page指令中的一些属性,其中,用于指定一个错误页面的属性是(B)
1分
• A、session
• B、errorPage
• C、isErrorPage
• D、isThreadSafe
17、
访问如下jsp时,浏览器得到的输出结果是(D)
<% int i = 0; %>
<%=i %>
1分
• A、0
• B、1
• C、11
• D、100
18、
下面选项中,用于封装JSP中抛出的异常信息的隐式对象是(D)
1分
• A、page
• B、out
• C、request
• D、exception
19、
要想在Tomcat服务器配置jsp文件,则需要在以下哪个目录中配置(B)
1分
• A、Tomcat安装目录\ conf\server.xml
• B、Tomcat安装目录\ conf\web.xml
• C、Tomcat安装目录\ webapps\web.xml
• D、Tomcat安装目录\ conf\context.xml
20、
下面选项中,属于jsp:forward标签中的属性的是(D)
1分
• A、file
• B、url
• C、path
• D、page
21、
下面 pageContext对象的作用范围值中,表示Web应用程序范围的是(D)
1分
• A、PAGE_SCOPE
• B、REQUEST_SCOPE
• C、SESSION_SCOPE
• D、APPLICATION_SCOPE
22、
下面JSP标签中,具有转发功能的是(B)
1分
• A、jsp:include
• B、jsp:forward
• C、jsp:param
• D、jsp:redirect
23、
将jsp翻译成的Servlet源码后,用户访问JSP文件时会被调用的方法是(C)
1分
• A、_jspInit()
• B、_jspDestroy()
• C、_jspService()
• D、Serivce()
24、
阅读下面代码: a.jsp代码: <%@ page contentType=“text/html;charset=UTF-8”%> <%Thread.sleep(5000);%> a.jsp内的中文
b.jsp代码: <%@ page contentType=“text/html;charset=UTF-8”%> b.jsp内的中文
下面选项中,关于访问时输出结果的描述中,正确的是(B)
1分
• A、同时输出两个页面的内容
• B、先输出b.sjp页面的内容,等待5秒,再输出a.jsp页面中的内容
• C、先输出a.sjp页面的内容,等待5秒,再输出b.jsp页面中的内容
• D、先等待5秒,再同时输出两个页面中的内容
25、
阅读下面JSP代码片段:
<%@ page language=“java” contentType=“text/html; charset=UTF-8”%>
<%
out.println(“first line
”);
response.getWriter().println(“second line
”);
%>
上述代码的输出结果是(A)
1分
• A、second line first line
• B、first line second line
• C、first line
• D、second line
26、
在JSP中, out隐式对象所对应的类是(C)
1分
• A、Writer
• B、PrintWriter
• C、JspWriter
• D、Print
27、
下面关于include指令的语法格式中,正确的是(B)
1分
• A、<%@ include path=“relativeURL”%>
• B、<%@ include file=“relativeURL”%>
• C、<%# include path=“relativeURL”%>
• D、<%# include file=“relativeURL”%>
28、
jsp文件翻译后的Servlet源码和class文件所存放的目录是(B)
1分
• A、Tomcat安装目录/conf/Catalina/localhost/应用名/
• B、Tomcat安装目录/work/Catalina/localhost/应用名/
• C、Tomcat安装目录/lib/Catalina/localhost/应用名/
• D、Tomcat安装目录/webapps/Catalina/localhost/应用名/
29、
下面关于JSP声明的描述中,错误的是(C)
1分
• A、一次可声明多个方法
• B、一个声明仅在一个页面中有效
• C、声明的方法可以直接使用JSP内置对象
• D、声明可以放在JSP的任何位置
30、
下面关于JSP作用域对象的描述,错误的是(C)
1分
• A、request对象可以得到请求中的参数
• B、session对象可以保存用户信息
• C、application对象可以被多个应用共享
• D、作用域范围从小到大是request、session、application
31、
下列是page指令中的一些属性,其中,用于告知客户端浏览器采用什么文档类型的属性是(B)
1分
• A、session
• B、contentType
• C、content
• D、isThreadSafe
32、
下列选项中,哪个是page指令中language属性的默认取值?(B)
1分
• A、english
• B、java
• C、jsp
• D、html
33、
JSP隐式对象pageContext所对应的类是(B)
1分
• A、javax.servlet.http.PageContext
• B、javax.servlet.jsp.PageContext
• C、javax.servlet.http.jsp.PageContext
• D、javax.servlet.jsp.http.PageContext
34、
下面关于JSP注释的说法中,正确的是(B)
1分
• A、JSP注释语法格式:
• B、JSP注释不会发送到客户端
• C、JSP注释会在服务器端翻译
• D、JSP注释与HTML注释是一样的
35、
在JSP页面中有如下代码:
<%@page import=“java.util.Date”%>
<%@page import=“java.io."%>
下面选项中,与之功能相同的是(C)
1分
• A、<%@page import="java.util.Date java.io.”%>
• B、<%@page import=“java.util.Date;java.io."%>
• C、<%@page import="java.util.Date,java.io.”%>
• D、<%@page import="java.util.Date!java.io."%>
36、
下列选项中,哪个是application隐式对象所属的类?(D)
1分
• A、ServletConfig
• B、HttpServletResponse
• C、HttpServletRequest
• D、ServletContext
37、
下列选项中,page指令语法格式正确的是(B)
1分
• A、<%! page 属性名= “属性值”%>
• B、<%@ page 属性名= “属性值”%>
• C、<%@ page 属性名:“属性值”%>
• D、<%! page 属性名:“属性值”%>
38、
阅读下列JSP代码片断:
<% int x=5; %>
<%! private int m(int a){ return a+1;} %>
<% x=3; %>
x=<%=x%>,<%=m(x)%>
其运行结果是( B)
1分
• A、x=3,6
• B、x=3,4
• C、x=5,4
• D、编译错误
39、
已知JSP页面中存在如下代码:
<% session.setAttribute(“pageContext”, “itcast”); %>
${pageContext}
则以下说法,正确的是(D)
1分
• A、将出现语法错误,因为pageContext是保留字
• B、运行时存在异常
• C、不出现异常,输出null
• D、不出现异常,输出pageContext对象
40、
新建一个index.jsp页面(位于test项目WebContent目录下的jsp文件夹),然后将test项目发布到Tomcat中并启动项目,请问在浏览器上输入下列哪个地址可以正常访问index.jsp页面( )(在本机上并使用默认端口号)(C)
1分
• A、http://localhost/test/index.jsp
• B、http://localhost:8080/test/WebContent/index.jsp
• C、http://localhost:8080/test/WebContent/jsp/index.jsp
• D、http://localhost:8080/test /index.jsp
多选题
41、
以下通过JSP的include指令来引入这些抽取出的JSP页面方式正确的是(AC)(多选)
2分
• A、<%@include file=“head.jsp”%> …省略
• B、<% @include file=“head.jsp”%> …省略
• C、<%@ include file=“head.jsp”%> …省略
• D、< %@include file=“head.jsp”% > …省略
42、
下列选项中,属于JSP指令的有(ABC)
2分
• A、page指令
• B、include指令
• C、taglib指令
• D、forward指令
43、
编写书城注册页面register.jsp,然后浏览器访问该注册页面,出现了中文乱码问题,在查阅资料后再在register.jsp顶部补充以下page指令:
<%@ page language=“java” contentType=“text/html; charset=UTF-8”
pageEncoding=“UTF-8”%>
再次访问该页面,仍然出现乱码情况,以下分析合理的是(ACD)(多选)
2分
• A、浏览器缓存未刷新
• B、该引入的page指令方法格式有错误
• C、Jsp页面和浏览器编码格式不统一
• D、服务器未重新启动
44、
下列选项中,可以在JSP中直接使用的类有哪些(ABCD)
2分
• A、java.lang.
• B、javax.servlet.*
• C、javax.servlet.jsp.*
• D、javax.servlet.http.*
45、
以下对JSP隐式对象exception的说法,正确的是(ACD)(多选)
2分
• A、JSP页面中有一个内置的exception对象,这个exception对象是Throwable的实例
• B、exception对象可以在出现异常的界面抛出并显示
• C、exception对象只有在错误处理页面才可以使用,即page指令中指定了属性<%@ page isErrorPage=”true”%>的页面
• D、exception对象常用方法getMessage():返回错误信息。
46、
下面选项中,当jsp页面出现异常时,为避免出现500异常页,可以采取的措施是(AC)
2分
• A、在page指令中配置errorPage属性指定处理错误的提示页
• B、在page指令中配置isErrorPage属性指定处理错误的提示页
• C、在当前应用的web.xml中配置元素指定错误处理页
• D、在当前应用的web.xml中配置元素指定错误处理页
47、
当jsp页面出现异常时, 如果page指令和web.xml中都配置了错误处理页,那么下面说法正确的是(BC)
2分
• A、在page指令中配置errorPage属性不起作用
• B、在page指令中配置的errorPage属性将会起作用
• C、在当前应用的web.xml中配置元素不起作用
• D、在当前应用的web.xml中配置元素起作用
48、
阅读下面代码:
a.jsp:
<%
______.setAttribute(“itcast”,“youjun”);
%>
b.jsp:
<%= ______.getAttribute("itcast ") %>
若想在访问b.jsp时取到正确值,横线处可以填入的隐式对象有(AB)
2分
• A、session、 session
• B、application、 application
• C、request、 request
• D、application、 session
49、
下面关于JSP的说法中,正确的是( ABCD )
2分
• A、它是建立在Servlet规范之上的动态网页开发技术
• B、它的代码由html代码与java代码组成
• C、jsp文件中, HTML代码用来实现网页中静态内容的显示
• D、jsp文件中, Java代码用来实现网页中动态内容的显示
50、
下列选项中,哪些是JSP文件在被访问前需要经历的阶段?(AC)
2分
• A、翻译
• B、访问
• C、编译
• D、运行
单选题
1、
下列选项中,可得到 PreparedStatement对象的是(C)
1分
• A、PreparedStatement pstmt = connection.createStatement(“sql”);
• B、PreparedStatement pstmt =connection.createStatement();
• C、PreparedStatement pstmt =connection.prepareStatement(sql);
• D、PreparedStatement pstmt =connection.prepareStatement();
2、
下面选项中,用于创建Statement对象的方法是( D )
1分
• A、getMetaData()
• B、getConnection(String url,String user,String pwd)
• C、registerDriver(Driver driver)
• D、createStatement()
3、
下面选项中,能够将游标移动到最后一行的下一个位置的方法是( A )
1分
• A、afterLast()
• B、absolute(int row)
• C、previous()
• D、last()
4、
下面关于executeQuery(String sql)方法,说法正确的是( C)
1分
• A、可以执行insert语句
• B、可以执行update语句
• C、可以执行select语句
• D、可以执行delete语句
5、
已知SQL语句: select count() from customer;
则下面Handler中,最适合转换的是(D)
1分
• A、BeanListHandler
• B、ArrayHandler
• C、BeanMapHandler
• D、ScalarHandler
6、
下面选项,用于设置dbcp连接池最小闲置连接数目的方法是(B)
1分
• A、setMaxActive (int maxIdle)
• B、setMinIdle(int minIdle)
• C、setInitialSize(int initialSize)
• D、setInitial(int initialSize)
7、
下列选项中,能把结果集中的第一行数据转成对象数组的Handler是(B)
1分
• A、BeanListHandler
• B、ArrayHandler
• C、BeanMapHandler
• D、ScalarHandler
8、
下面选项中,属于QueryRunner类的query()方法可执行的操作语句是(A )
1分
• A、SELECT语句
• B、DELETE语句
• C、UPDATE语句
• D、INSERT语句
9、
下面选项中,用于返回表示数据库元数据的方法是( A )
1分
• A、getMetaData()
• B、getConnection(String url,String user,String pwd)
• C、registerDriver(Driver driver)
• D、createStatement()
10、
JDBC API主要位于下列选项的那个包中(A)
1分
• A、java.sql.
• B、java.util.*
• C、javax.lang.*
• D、java.text.*
11、
数据源所实现的标准接口是(B)
1分
• A、java.sql.DataSource
• B、javax.sql.DataSource
• C、javax.sql.Connection
• D、java.sql.Connection
12、
下面选项中,属于QueryRunner类中用于执行增删改语句的方法是(B)
1分
• A、insert
• B、update
• C、delete
• D、query
13、
下面选项中,用于将参数化的SQL语句发送到数据库的方法是( B)
1分
• A、prepareCall(String sql)
• B、prepareStatement(String sql)
• C、registerDriver(Driver driver)
• D、createStatement()
14、
使用C3P0数据源时,当传入的参数为空或者不存在时,则会出现的问题是(C)
1分
• A、语法错误
• B、会出现异常
• C、使用默认的配置方式创建数据源
• D、以上说法都有误
15、
下面选项中,能将游标移动到结果集最后一行的方法是(D )
1分
• A、next()
• B、absolute(int row)
• C、previous()
• D、last()
16、
下列选项,可用于存储结果集的对象是(A)
1分
• A、ResultSet
• B、Connection
• C、Statement
• D、PreparedStatement
17、
下面关于自定义ResultSetHandler接口实现类的描述,正确的是(A)
1分
• A、通过重写handle()方法,从而实现结果集的处理
• B、通过重写update()方法,实现结果集的处理
• C、通过重写query()方法,实现结果集的处理
• D、通过重写delete()方法,实现结果集的处理
18、
下列选项中,关于Statement描述错误的是(B)
1分
• A、Statement是用来执行SQL语句的
• B、Statement是PreparedStatement的子接口
• C、获取Statement实现需要使用Connection的createStatement()方法
• D、PreparedStatement能使用参数占位符,而Statement不行
19、
已知,存在 QueryRunner对象 runner , SQL语句:
String sql = “select * from user where id=?”;
下面操作中,能实现查询指定记录的选项是(D)
1分
• 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});
20、
下列选项中,能够创建CallableStatement对象的方法是( C )
1分
• A、createStatement()
• B、prepareStatement()
• C、prepareCall()
• D、createCallableStatement ()
21、
下面选项中,关于DBUtils类中用于装载并注册JDBC驱动程序的方法是( D )
1分
• A、close()方法
• B、closeQuietly()方法
• C、commitAndCloseQuietly()方法
• D、loadDriver()方法
22、
下列关于JDBC驱动的说法中,正确的是(D)
1分
• A、用JDBC连接数据库,必须使用连接池
• B、用JDBC连接数据库,使用连接池就不需要导入数据库驱动
• C、操作不同的数据库可以使用相同的驱动
• D、无论如何,只要使用JDBC,那么就要使用JDBC驱动
23、
下面选项中,能够将游标从当前位置向下移一行的方法是(A )
1分
• A、next()
• B、absolute(int row)
• C、previous()
• D、last()
24、
下面选项中,属于DataSource接口实现类的是(B)
1分
• A、DBCPDataSourc
• B、BasicDataSource
• C、DataSourceBasic
• D、DataSourceFactory
25、
下面选项中,主要用于执行DML和DDL语句的是(B )
1分
• A、ResultSet rs = stmt.executeDDL(sql);
• B、ResultSet rs = stmt.executeUpdate(sql);
• C、ResultSet rs = stmt.executeDelete(sql);
• D、ResultSet rs = stmt.executeDML(sql);
26、
在使用C3P0数据源时,默认的配置文件名字是(B)
1分
• A、c3p0-config.properties
• B、c3p0-config.xml
• C、c3p0.xml
• D、c3p0.properties
27、
Statement接口中executeQuery()方法的返回值是( A)
1分
• A、ResultSet
• B、int
• C、Boolean
• D、Result
28、
下列选项中,能够实现预编译的是(C)
1分
• A、Statement
• B、Connection
• C、PreparedStatement
• D、DriverManager
29、
C3P0数据源中最主要的核心类是(C)
1分
• A、BasicDataSource
• B、BasicDataSourceFactory
• C、ComboPooledDataSource
• D、DataSourceFactory
30、
已知,存在 QueryRunner对象 runner ,SQL语句:
String sql = “delete from user where id=?”;
下面操作中,能实现删除记录id=1的操作是(B)
1分
• A、int num =runner.delete(sql, 1);
• B、int num =runner.update(sql, 1);
• C、Object num =runner.delete(1, sql);
• D、Object num =runner.update(1, sql);
31、
JDBC驱动器API的主要接口是(B )
1分
• A、java.sql.DriverManager类
• B、java.sql.Driver接口
• C、javax.sql. Driver接口
• D、javax.sql.DriverManager类
32、
JDBC驱动管理器的主要实现类是( A )
1分
• A、java.sql.DriverManager类
• B、java.sql.Driver接口
• C、javax.sql. Driver接口
• D、javax.sql.DriverManager类
33、
下面Statement接口的方法中,用于执行各种SQL语句的是( C)。
1分
• A、executeUpdate(String sql)
• B、executeQuery(String sql)
• C、execute(String sql)
• D、executeDelete(String sql)
34、
下列选项中,能够防止重复注册数据库驱动的选项是(B)
1分
• A、DriverManager.registerDriver(new com.mysql.jdbc.Driver());
• B、Class.forName(“com.mysql.jdbc.Driver”);
• C、class.forName(“com.mysql.jdbc.Driver”);
• D、DriverManager.getDriver(new com.mysql.jdbc.Driver());
35、
下面关于连接mysql下的mydb数据库的url,编写正确的是(B)
1分
• A、jdbc:mysql//:localhost:3306/mydb
• B、jdbc:mysql://localhost:3306/mydb
• C、mysql:jdbc//:localhost:3306/mydb
• D、mysql:jdbc://localhost:3306/mydb
多选题
36、
下面选项中,关于DBUtils类中可用于关闭数据连接的方法是( ABC)
1分
• A、close()方法
• B、closeQuietly()方法
• C、commitAndCloseQuietly()方法
• D、loadDriver()方法
37、
下列选项中,属于回收数据库资源时进行的操作有(ABD)
1分
• A、关闭ResultSet
• B、关闭Statement
• C、关闭应用程序
• D、关闭Connection
38、
下列关于编写JDBCUtils工具需要包含的操作有(ABC)
1分
• A、加载数据库驱动
• B、建立数据库连接
• C、关闭数据库连接
• D、得到结果集
39、
下面选项中,属于DBUtils类中提供的方法是(ABCD )
1分
• A、close()方法
• B、closeQuietly()方法
• C、commitAndCloseQuietly()方法
• D、loadDriver()方法
40、
使用DBCP数据源需要导入的jar包是(AC)
1分
• A、commons-dbcp.jar包
• B、commons-io.jar包
• C、commons-pool.jar包
• D、commons-lang.jar包
41、
下面关于DBUtils类中closeQuietly ()方法的作用,描述正确的是(ABCD )
1分
• A、关闭Connection
• B、关闭Statement
• C、关闭ResultSet
• D、该方法可以隐藏程序中抛出的SQL异常
42、
下面选项中,可以作为QueryRunner类中query()方法的参数的是(ABC )
1分
• A、Connection conn
• B、String sql
• C、Object[] params
• D、DataSource ds
43、
下面关于使用DBUtils框架的优势,描述正确的是(ABC)
1分
• A、减少JDBC开发时的代码量
• B、增加了JDBC开发代码的规整性
• C、增加了JDBC代码易读性
• D、增加了JDBC开发代码的规整性,但代码更加难读了
44、
下面选项中,能够正确创建BasicDataSource对象的代码是(ABD)
1分
• A、BasicDataSource ds = new BasicDataSource();
• B、DataSource ds = new BasicDataSource();
• C、BasicDataSource ds = BasicDataSourceFactory.createDataSource();
• D、DataSource ds = BasicDataSourceFactory.createDataSource(Properties p);
45、
下面关于 ResultSet接口中getXXX()方法的描述正确的是(ABC )
1分
• A、可以通过字段的名称来获取指定数据
• B、可以通过字段的索引来获取指定的数据
• C、字段的索引是从1开始编号的
• D、字段的索引是从0开始编号的
46、
下面关于DBCP的描述,正确的是(ABC)
1分
• A、DBCP是数据库连接池(DataBase Connection Pool)的简称
• B、DBCP是Apache组织下的开源连接池实现
• C、DBCP 是Tomcat服务器使用的连接池组件
• D、使用DBCP连接池技术不需要导入jar包
47、
在使用C3P0数据源时,能够正确得到DataSource实例对象的代码是(AB)
1分
• A、DataSource ds = new ComboPooledDataSource();
• B、DataSource ds = new ComboPooledDataSource(String name);
• C、ComboPooledDataSource ds = new DataSource (String name);
• D、ComboPooledDataSource ds = new DataSource ();
48、
下列选项中,属于 javax.sql.DataSource接口中提供的方法有(CD)
1分
• A、getConnection( String username)
• B、getConnection( String password)
• C、getConnection(String username, String password)
• D、getConnection()
49、
已知C3P0配置文件中结点名为mysql,则得到数据源的正确写法是(AB)
1分
• A、DataSource ds = new ComboPooledDataSource(“mysql”);
• B、ComboPooledDataSource ds = new ComboPooledDataSource(“mysql”);
• C、ComboPooledDataSource cpds = new ComboPooledDataSource();
• D、DataSource cpds = new ComboPooledDataSource();
50、
下面选项中,属于QueryRunner类的update()方法可执行的操作语句是(BCD )
1分
• A、SELECT语句
• B、DELETE语句
• C、UPDATE语句
• D、INSERT语句
51、
下列选项中,属于Statement接口提供的方法有(ABC )
1分
• A、executeUpdate(String sql)
• B、executeQuery(String sql)
• C、execute(String sql)
• D、query(String sql)
52、
下面关于QueryRunner类的构造方法,描述正确的是(AB )
1分
• A、可以使用默认的构造方法进行构造
• B、使用javax.sql.DataSource DataSource作为参数的构造方法
• C、不能直接构造
• D、可以使用QueryRunnerFactory工厂类来进行构造
53、
下面选项中,属于QueryRunner类中定义的方法是( BC)
1分
• A、delete()
• B、query()
• C、update()
• D、insert()
54、
下列选项中,属于ResultSetHandler接口实现类的是(ACD)
1分
• A、BeanListHandler
• B、BeanSetHandler
• C、BeanMapHandler
• D、ScalarHandler
55、
以下有关ResultSetHandler接口的常用实现类说法正确的是(ABCD)(多选)
1分
• A、BeanHandler:将结果集中的第一行数据封装到一个对应的JavaBean实例中。
• B、BeanListHandler:将结果集中的每一行数据都封装到一个对应的JavaBean实例中,并存放到List里。
• C、ScalarHandler:将结果集中某一条记录的其中某一列的数据存储成Object对象。
• D、ArrayHandler:把结果集中的第一行数据转成对象数组
简述pageContext对象的作用?(至少写出2点)[简答题] [5分]
答案:1.用于得到其它8个隐式对象2.默认直接操作page域中的数据3.可以用它操作其它三个域对象(request,session.application)中的数据4.提供的findAttribute也是后续要学习的EL表达式的实现原理
是否提交附件:否
难易度:3
解析:掌握pageContext对象
知识点:JSP
标签:JSP
课程名称:Web开发技术
简述过滤器的基本功能。[简答题] [5分]
答案:Filter被称作过滤器或者拦截器,其基本功能就是对Servlet容器调用Servlet的过程进行拦截,从而在Servlet进行响应处理前后实现一些特殊功能。
是否提交附件:否
难易度:2
解析:掌握过滤器
知识点:过滤器
标签:过滤器
课程名称:Web开发技术
列举出Servlet事件监听器可以监听的对象?(至少写出三个) [简答题] [5分]
答案:1.ServletContext域对象的创建及销毁2.HttpSession域对象的创建及销毁3.ServletRequest域对象的创建及销毁。
是否提交附件:否
难易度:3
解析:掌握监听器
知识点:监听器
标签:监听器
课程名称:Web开发技术
简述Servlet事件监听器的作用。(写出三点)[简答题] [5分]
答案:1.监听Web应用程序中ServletContext、HttpSession和ServletRequest等域对象的创建和销毁过程。2.监听ServletContext、HttpSession和ServletRequest等域对象属性的修改。3.感知绑定到HttpSession域中某个对象的状态。
难易度:4
解析:掌握监听器
知识点:监听器
标签:监听器
课程名称:Web开发技术
简述POST请求和GET请求有什么不同?(至少2点)[简答题] [5分]
答案:1.POST传输数据大小无限制2.POST比GET请求方式更安全
是否提交附件:否
难易度:3
解析:掌握http请求方式
知识点:http请求
标签:http请求
课程名称:Web开发技术
简述什么是会话技术?[简答题] [5分]
答案:会话过程类似于生活中的打电话过程,它指的是一个客户端(浏览器)与Web服务器之间连续发生的一系列请求和响应过程。在Servlet技术中,提供了两个用于保存会话数据的对象,分别是Cookie和Session。
是否提交附件:否
难易度:3
解析:理解会话的概念
知识点:会话
标签:会话
课程名称:Web开发技术
简述Servlet事件监听器的分类。(写出三点)[简答题] [5分]
答案:1.用于监听域对象创建和销毁的事件监听。2.用于监听域对象属性增加和删除的事件监听器。3.用于监听绑定到HttpSession域中某个对象状态的事件监听器。
是否提交附件:否
难易度:4
解析:监听器
知识点:监听器
标签:监听器
课程名称:Web开发技术
简述什么是Session[简答题] [5分]
答案:Session是一种将会话数据保存到服务器端的技术,需要借助Cookie技术来实现。
是否提交附件:否
难易度:2
解析:理解会话的概念
知识点:会话
标签:会话
课程名称:Web开发技术
简单介绍一下request.getAttribute()和request.getParameter()的区别[简答题] [5分]
答案:得到的都是String类型的。或者是http://a.jsp?id=123中的123,或者是某个表单提交过去的数据。getAttribute则可以是对象。getParameter()是获取POST/GET传递的参数值;getAttribute()是获取对象容器中的数据值request.getParameter()是接受从浏览器上发出的请求,返回的一定是一个String。request.getAttribute()一般是取从Servlet上setAttribute()的对象,返回可以是各种形式(Object)
是否提交附件:否
难易度:5
解析:request对象
知识点:request对象
标签:Servlet
课程名称:Web开发技术
请列举出三个HttpServletResponse常用的响应状态码,并说出它们的意义[简答题] [5分]
答案:200:表示请求成功404:表示没有找到资源302:表示临时使用其它资源处理当前请求,但是,之后的请求还应该使用原来的地址500:表示服务器内部发生了错误505:表示服务器不支持或拒绝支持请求行中给出的HTTP版本400:表示客户端发送的请求语法有误
是否提交附件:否
难易度:3
解析:response对象
知识点:response对象
标签:Servlet
课程名称:Web开发技术
简述ResultSetHandler接口常用的实现类及其作用(写出三个)。
答案:1.BeanHandler:将结果集中的第一行数据封装到一个对应的JavaBean实例中。2.BeanListHandler:将结果集中的每一行数据都封装到一个对应的JavaBean实例中,存放到List里。3.ScalarHandler:将结果集中某一条记录的其中某一列的数据存储成Object对象。
是否提交附件:否
难易度:4
解析:ResultSetHandler接口
知识点:ResultSetHandler接口
标签:ResultSetHandler接口
课程名称:Web开发技术
简述文件上传时必须具备的三个前提条件。[简答题] [5分]
答案:1.表单的method属性设置为post方式。2.表单的enctype属性设置为“multipart/form-data”类型。3.添加文件的input标签类型设置为file类型。
是否提交附件:否
难易度:3
解析:文件上传
知识点:文件上传
标签:文件上传
课程名称:Web开发技术
简述数据库连接池的工作机制是什么? [简答题] [5分]
答案:数据库连接池在初始化时将创建一定数量的数据库连接放到连接池中,当应用程序访问数据库时并不是直接创建Connection,而是向连接池“申请”一个Connection。如果连接池中有空闲的Connection,则将其返回,否则创建新的Connection。使用完毕后,连接池会将该Connection回收,并交付其他的线程使用,以减少创建和断开数据库连接的次数,提高数据库的访问效率
是否提交附件:否
难易度:4
解析:数据库连接池
知识点:数据库连接池
标签:数据库连接池
课程名称:Web开发技术
简述什么是过滤器链。[简答题] [5分]
答案:在一个Web应用程序中如果多个Filter程序都对同一个URL进行拦截,那么这些Filter就会组成一个Filter链(也叫过滤器链)
是否提交附件:否
难易度:2
解析:过滤器
知识点:过滤器
标签:过滤器
课程名称:Web开发技术
简述ServletContext接口的三个主要作用。[简答题] [5分]
答案:1.获取Web应用程序的初始化参数2.实现多个Servlet对象共享数据3.读取Web应用下的资源文件
是否提交附件:否
难易度:3
解析:Servlet
知识点:ServletContext接口
标签:Servlet
课程名称:Web开发技术
简述MVC设计模式的工作流程?[简答题] [5分]
答案:1.控制器接收到用户的请求。2.根据请求信息调用模型组件的业务方法,控制器调用模型组件处理相应业务操作。3.根据模型的返回结果选择相应的视图组件,显示处理结果和模型中的数据。
是否提交附件:否
难易度:3
解析:MVC
知识点:MVC
标签:MVC
课程名称:Web开发技术
简述请求转发与重定向的异同?(至少写3点)[简答题] [5分]
答案:1.请求转发和重定向都可以实现访问一个资源时转向当前应用资源2.请求转发是一次请求一次响应,而重定向为两次请求两次响应3.一般情况下应该使用请求转发,减少浏览器对服务器的访问,减轻服务器压力4.如果需要改变浏览器的地址栏,或更改浏览器的刷新按钮的功能时需要使用重定向
是否提交附件:否
难易度:3
解析:请求转发;重定向
知识点:请求转发;重定向
标签:请求转发;重定向
课程名称:Web开发技术
简述JSP的九个内置对象及它们分别所对应的类。[简答题] [5分]
答案:1.out javax.servlet.jsp.JspWriter 用于页面输出;2.request javax.servlet.http.HttpServletRequest 得到用户请求信息;3.response javax.servlet.http.HttpServletResponse 服务器向客户端回应信息;4.config javax.servlet.ServletConfig 服务器配置,可以取得初始化参数;5.session javax.servlet.http.HttpSession 用来保存用户的信息;6.application javax.servlet.ServletContext 所有用户的共享信息;7.page java.lang.Object 指当前页面转换后的Servlet类的实例;8.pageContext javax.servlet.jsp.PageContext JSP的页面容器;9.exception java.lang.Throwable 表示JSP页面所发生的异常,在错误页中才起作用
是否提交附件:否
难易度:4
解析:JSP
知识点:JSP技术
标签:JSP
课程名称:Web开发技术
简述Cookie与Session的区别?(至少写出3点)[简答题] [5分]
答案:1.Cookie和HttpSession是保存会话相关数据的技术,其中Cookie将信息存储在浏览器端是客户端技术,Session将数据保存在服务器端是服务器端技术;2.Cookie是基于HTTP协议中的Set-Cookie响应头和Cookie请求头进行工作的;3.默认情况下HttpSession是基于一个名称为JSESSIONID 的特殊Cookie工作的;4.浏览器对Cookie具有严格的限制,一个网站能在浏览器中保存多少Cookie是有限制的;5.HttpSession默认是基于Cookie运作的
是否提交附件:否
难易度:4
解析:理解会话的概念
知识点:会话
标签:会话
课程名称:Web开发技术
简述文件下载的实现原理。[简答题] [5分]
答案:1.获取下载文件的地址。2.根据该地址创建用于流读取该下载文件的字节输入流3.设置相应的响应头消息4.将读取的内容通过输出流写到目标文件中
是否提交附件:否
难易度:3
解析:文件上传
知识点:文件上传
标签:文件上传
课程名称:Web开发技术
简述MVC设计模式中视图(view)的作用?(写出3点)[简答题] [5分]
答案:1.负责与用户进行交互2.从模型中获取数据向用户展示3.将用户请求传递给控制器进行处理
是否提交附件:否
难易度:3
解析:MVC
知识点:MVC
标签:MVC
课程名称:Web开发技术
简述include指令实现静态包含的特点。(写出3点)[简答题] [5分]
答案:1.被引入的文件必须遵循JSP语法,其中的内容可以包含静态HTML、JSP脚本元素和JSP指令等普通JSP页面所具有的一切内容。2.除了指令元素之外,被引入的文件中的其它元素都被转换成相应的Java源代码,然后插入进当前JSP页面所翻译成的Servlet源文件中,插入位置与include指令在当前JSP页面中的位置保持一致。3.file属性的设置值必须使用相对路径,如果以“/”开头,表示相对于当前WEB应用程序的根目录(注意不是站点根目录),否则,表示相对于当前文件。