1、在Java EE中,Servlet是在服务器端运行,以处理客户端请求而做出的响应的程序,下列选项中属于Servlet生命周期阶段的是( )
A、加载和实例化
B、初始化
C、服务
D、销毁
E、以上全部
答案:E
2、在Java EE中的MVC设计模式中,( )负责接受客户端的请求数据
A、JavaBean
B、JSP
C、Servlet
D、HTML
答案:C
3、过滤器应实现的接口是( )。
A、HttpServlet
B、HttpFilter
C、ServletFilter
D、Filter
答案:D
4、开发Java Web应用程序的时候,创建一个Servlet,该Servlet重写了父类的doGet()和doPost()方法,那么其父类可能是( )
A、RequestDispatcher
B、HttpServletResponse
C、HttpServletRequest
D、HttpServlet
答案:D
5、在Java Web开发中,如果某个数据需要跨多个请求存在,则数据应该存储在( )中
A、session
B、page
C、request
D、Response
答案:A
6、在开发Java Web应用程序的时候,HTTP请求消息使用Get或POET方法以便在WEB上传输数据,下列关于GET和POST 方法描述正确的是( )
A、POST请求的数据在地址栏不可见
B、GET请求提交的数据在理论上没有长度限制
C、POST请求对发送的数据的长度限制在240——255个字符
D、GET请求提交数据更加安全
答案:A
7、在JSP中有EL表达式${10*10 ne 10},结果是( )
A、100
B、true
C、fasle
D、以上都不对
答案:B
8、JSTL标签的分类以下说法正确的是( )
A、通用标签与迭代标签
B、核心标签与迭代标签
C、核心标签与sql标签
D、以上都不是
答案:C
9、在Java Servlet API中,HttpServletRequest接口的( )方法用于返回当前请求相关联的会话,如果没有,返回null
A、getSession() //=gerSession(true)默认为:getSession(true)
B、getSession(true)
C、getSession(false)
D、getSession(null)
答案:C
10、在Java Web开发中,不同的客户端需要共享数据,则数据应该存储在( )中
A、session
B、application
C、request
D、response
答案:B
11、利用三层结构搭建某网上书店系统,设计用户登陆界面,如果你是设计人员,你将在三层结构的( )中实现
A、模型层
B、表示层
C、数据访问层
D、业务逻辑层
答案:B
12、在Java EE中,( )接口定义了getSession()方法
A、httpServlet
B、HttpSession
C、HttpServletRequest
D、HttpServletResponse
答案:C
13、JSP标准标签库(JSTL)提供的主要标签库中,其中( )可用于操作数据库。
A、核心标签库
B、I18N与格式化标签库
C、XML标签库
D、SQL标签库
答案:D
14、JSP表达式语言可用于在网页上生成动态的内容并代替JSP元素,JSP表达式语言的语法是( )
A、{EL expresion}
B、${EL expresion}
C、@{EL expresion}
D、#{EL expresion}
答案:B
15、在J2EE的体系结构中,系统的业务和功能代码组成了三层结构中的( )层
A、表示层
B、中间层
C、数据层
D、客户端层
答案:B
16、在JSTL的达代标签<forEach>的属性中,用于指定要遍历的对象集合( )
A、var
B、items
C、value
D、varStatus
答案:B
17、如果不希望JSP网页支持Session,应该( )。
A、调用HttpSession的invalidate()方法
B、<%@ page session= “false”>
C、在jsp页面中写入如下代码HttpSession session=request.getSession(false);
D、调用HttpSession的setMaxInactiveInterval(),将时间设置为0
答案:B
18、Servlet是一个在服务器上运行、处理请求信息并将其发送到客户端的Java程序()接受服务请求、找到Servlet类、加载Servlet类并创建Servlet对象。
A、客户端
B、IE浏览器
C、Servlet容器
D、Servlet本身
答案:C
19、MVC设计模式包含模型层、视图层和控制层,在下列组件扮演控制器角色的是( )
A、Servlet
B、JSP
C、javaBean
D、HTML
答案:A
20、JSP标准标签库(JSTL)的标签库描述符文件的后缀是( )
A、.tld
B、.jar
C、.properties
D、.xml
答案:A
21、在J2EE中,以下不是JSP隐式对象的是( )
A、pageContext
B、context
C、application
D、out
答案:B
22、在Java Web应用程序中,给定servlet A的代码片段如下所示:
Public void doPost(HttpServletRequest request,HttpServletResponse response)
throws ServletException,IOException{
String id=”kingdom”;
_________________
}
Servlet B与servlet A同在一个有效的会话范围内,当把请求转发给servlet B后,要
使B能够获得”kingdom”值,下划线处应填入( )
A、request.getSession().setAttribute(“ID”,id);
B、request.getSession().getAttribute(“ID”,id);
C、request.getSession().setParameter(“ID”,id);
D、request.getSession().getParameter(“ID”,id);
答案:A
23、在Java Web应用程序中,包含两个名为Servlet1和Servlet2的HttpServlet,在web.xml中指定Servlet2的访问路径为”/servlet2″,Servlet1的doGet方法中的代码为:
PrintWriter out=response.getWriter();
out.print(“Servlet1″);
RequestDispatcher dispatcher=request.getRequestDispatcher(“/servlet2″);
dispatcher.forword(request,response);
out.close();
Servlet2的doGet方法中的代码为:
PrintWriter out=response.getWriter();
out.print(“Servlet2″);
out.close();
如果用户在浏览器中访问Servlet1,则浏览器将( )
A、显示”Servlet1″
B、显示”Servlet2″
C、显示”Servlet1Servlet2″
D、什么也不显示
答案:B
24、在Java Web应用程序中,使用数据源与JNDI获得数据库连接时,应把JDBC驱动程序jar文件放在( )下:
A、应用程序的src目录
B、应用程序的/WEB-INF/lib目录
C、Tomcat的根目录
D、Tomcat的common/lib目录
答案:D
25、在Java Web 应用中,下面关于HttpSession的说法正确的是( )(选择二项)
A、Servlet容器负责创建HttpSession对象
B、每个HttpSession对象都有唯一的ID
C、客户端浏览器负责为HttpSession分配唯一的ID
D、HttpSession 对象的ID值,由程序员进行分配
答案:AB
26、在HTTP协议中,请求消息使用( )方法用于通过Internet发送大量数据,没有长度的限制。
A、get
B、post
C、put
D、head
答案:B
27、在Java Web应用程序中,JSP EL 表达式可用于访问( )中存储的数据
A、Web.xml
B、Servlet
C、Applet
D、JavaBean
答案:D
29、在JSP中,使用<jsp:useBean>动作可以将javaBean嵌入JSP页面,对JavaBean的访问范围不能是( )。
A、page
B、request
C、response
D、application
答案:C
30、在Java Web应用程序中,包含jsp1.jsp和jsp2.jsp,以及封装在user包下的名为User的Javabean,user中包含loginName属性以及相应的setter和getter方法,如果用户A在浏览器中访问jsp1.jsp后,用户B在浏览器中访问jsp2.jsp,则用户B的浏览器将( )
Jsp1.jsp代码:
<html>
<jsp:useBean id=”user” class=”user.User” scope=”session”/>
<jsp:setProperty name=”user” property=”loginName” value=”Mart”/>
</html>
Jsp2.jsp代码:
<html>
<jsp:useBean id=”user” class=”user.User” scope=”session”/>
<jsp:getProperty name=”user” property=”loginName”/>
</html>
A、什么也不显示
B、显示”null”
C、显示”Mart”
D、报错,提示无法显示网页
答案:A
31、在servlet的服务方法(如doPost() )中,如何从请求获得”userID”值 ( )
A、String userID = request.getParameter(“userID”);
B、String userID = request.getHeader(“userID”);
C、String userID = request.getRequestHeader(“userID”);
D、String userID = getServletContext().getInitParameter(“userID”);
答案:A
32、HttpServletResponse的哪些方法用于将一个HTTP请求重定向到另一个URL( )
A、sednURL()
B、redirectURL()
C、redirectHttp()
D、sendRedirect()
E、getRequestDispatcher()
答案:D
33、以下哪个代码段会得到一个输出流,用于向HttpServletResponse输出字符文本 ( )
A、java.io.PrintWriter out = response.getWriter();
B、ServletOutputStream out = response.getOutputStream(); //输出为字节文本
C、java.io.PrintWriter out = new PrintWriter(response.getReader());
D、Servlet OutputStream out = response.getBinaryStream();
答案:A
34、servlet开发人员在扩展HttpServlet时如何处理HttpServlet的service()方法( )(选择二项)
A、大多数情况下都应该覆盖service()方法
B、应当从doGet()或doPost()调用service()方法
C、应当从init()调用service()方法
D、应当至少覆盖一个doXXX( )方法(如doPost())
答案:AD
35、关于会话属性,以下哪些说法是正确( )(选择两项)
A、HttpSession.getAttribute(String)的返回类型是Object
B、HttpSession.getAttribute(String)的返回类型是String
C、在HttpSession上调用setAttribute(“keyA”, “valueB”)时,如果这个会话中对应键keyA已经有了一个值,就会导致抛出一个异常
D、在HttpSession上调用setAttribute(“keyA”, “valueB”)时,如果这个会话中对应键keyA已经有一个值,则会导致这个属性原先的值被String valueB替换
答案:AD
36、给定req是一个HttpServletRequest,哪个代码会在不存在会话的情况下创建一个会话( ) (选择两项)
A、req.getSession()
B、req.getSession(true)
C、req.getSession(false)
D、req.createSession()
E、req.getNewSession()
F、req.createSession(true)
G、req.createSession(false)
答案:AB
38、给定TheBean类,假设还没有创建TheBean类的实例,以下哪些JSP标准动作语句能创建这个bean的一个新实例,并把它存储在请求作用域 ( )
A、<jsp :useBean name=”myBean” type=”com.example.TheBean”/>
B、<jsp :takeBean name=”myBean” type=”com.example.TheBean”/>
C、<jsp :useBean id=”myBean” class=”com.example.TheBean” scope=”request”/>
D、<jsp :takeBean id=”myBean” class=”com.example.TheBean” scope=”request”/>
答案:C
39、给定一个Model1体系结构,其中有一个JSP页面处理所有控制器函数,这个JSP控制器要把请求分派给另一个JSP页面 ( )
A、<jsp:forward page=”view.jsp”/>
B、<jsp:forward file=”view.jsp”/>
C、<jsp:dispatch page=”view.jsp”/>
D、<jsp:dispatch file=”view.jsp”/>
答案:A
40、有关<jsp:useBean>标准动作,以下哪些说法是正确的 ( ) (选择两项)
A、id属性表示对象的名称
B、scope属性是必要的 //是比不可少的,虽说可省略不写,但默认仍存在
C、scope属性是可选的,默认为page
D、class属性是可选的 //class 属性与 type属性一样,二者(必须)任选一
答案:CD
41、在JSP页面上使用JSTL标签时,应使用taglib指令导入标签库描述文件,并设置taglib指令的( )属性指定标签的前缀。
A、prefix
B、name
C、tag
D、uri
答案:A
42、JavaBean是在Java中开发的可以跨平台的重用组件,JavaBean必须满足的要求中不包括( )
A、是一个共有类
B、实现java.io.Serializable接口
C、具有不带任何参数的共有构造函数
D、具有访问属性的共有的getter和setter方法
答案:C
43、在JSP页面中使用<c:froEach>标签,对session中集合对象arr进行迭代时,items属性赋值正确的是( )。
A、<c:forEach var=”bean” items=”session.arr”/>
B、<c:forEach var=”bean” items=”${session.arr}”/>
C、<c:forEach var=”bean” items=”sessionScope.arr”/>
D、<c:forEach var=”bean” items=”${sessionScope.arr}”/>
答案:D
44、下列选项中不属于JSP标准动作的是( )
A、<jsp:forward/>
B、<c:out/> //这个是属于标签
C、<jsp:useBean/>
D、<jsp:setProperty/>
答案:B
45、在JavaEE中,初始化Servlet实例的时候,init()方法是由( )执行
A、程序员编写代码来调用执行
B、每次执行当前的Servlet时,由系统自动执行
C、当第一次执行当前的Servlet时,由系统自动执行
D、以上说法都不对
答案:C
46、在Java Web应用程序中,要完成将用户会话中的”counter”计数器的值增加1,下列( )是正确的Servlet代码片段。
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.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();
Integer ival=(Integer)session.getAttribute(“counter”);
If(ival==null){
ival=1;
}else{
ival=ival+1;
}
session.setAttribute(“counter”,new Integer(ival));
答案:D
47、在JSP页面中,( )可以取得名为boxes的复选框第一个值。(选两项)
A、${param.boxes}
B、${paramValues.boxes}
C、${paramValues.boxes[0]}
D、${paramValue.boxes[1]}
答案:AC
48、下面这一段JSP代码片断的输出结果是( )。
<%! int i=1;%> //<%! Int i=1;%>代表声明的是全局变量或方法
<%!int getNumber(){ //<% int i=1;%> 代表声明的是局部变量或方法
return i;
}
%>
<% int i=10;
out.println(“first i=”+i);
%>
<% out.println(“second i=”+i); %>
<% out.println(“third i=”+getNumber()) ; %>
A、first 1=10 second i=1 third i=1
B、first i=10 second i=10 third i=1
C、first 1=10 second i=1 third i=10
D、first 1=1 second i=1 third i=1
答案:B
49、在J2EE中,test.jsp文件如下。试图运行时,将发生( )。
<html>
<% String str=null ;%>
str is <% =”str”%>
</html>
A、转译期错误
B、编译期错误
C、运行后,浏览器上显示:str is null
D、运行后,浏览器上显示:str is str
答案:D
50、对于以下代码,说法正确的是( )。
session.setAttribute(“count”,new Integer(0));
Integer count = session.getAttribute(“count”);
A、不能通过编译
B、能通过编译,并且能正常运行
C、编译通过,但运行时抛出ClassCastException
D、以上说法都不正确
答案:A