121.EJB的优点有哪些?(选择2项)A、技术领先 B、价格低廉 C、性能优越 D、强大的容器支持解答:CD122.以下哪些接口能够实现对Web访问者的身份认证?(选择1项)A、Http Servlet RequestB、Http Servlet ResponseC、Http SessionD、Http Servlet123.无状态会话Bean、有状态会话Bean、CMP与BMP中,哪一种Bean不需要自己书写连接数据库的代码?A、无状态会话BeanB、有状态会话BeanC、CMPD、BMP解答:CBMP是在Bean中完成对数据库JDBC的各种调用CMP是由EJB容器自动完成对数据库的操作会话Bean主要处理业务逻辑124.假设web应用的文档根目录为MyApp,那么可以从哪里找到database.jar文件。A. MyApp目录下B. MyApp\images目录下C. MyApp\WEB-INF目录下D. MyApp\WEB-INF\lib目录下解答:DWeb工程的lib是放置.jar文件的地方。125.从以下哪一个选项中可以获得Servlet的初始化参数。A.ServletB.ServletContextC.ServletConfigD.GenericServlet解答:Cservlet的生命周期的方法中有一个init方法,其中一个重载的init方法的参数为ServletConfig可以获取初始化参数。126.哪一个对象可以用于获得浏览器发送的请求。A.HttpServletRequestB.HttpServletResponseC.HttpServletD.Http解答:AHttpServletRequest中有一些方法可以获取浏览器发送的请求信息。127.运行jsp需要安装_______Web服务器。A.ApacheB.tomcatC.WebLogicD.IIS解答:BCApache是PHP程序运行的服务器,IIS是.net程序运行的服务器。128.如何取得数据源。A.通过HttpB.通过ftpC.JNDID.通过Connection对象解答:C在服务器上配置好数据以后,通过JNDI技术获取到数据源。JNDI:Java Naming and Directory Interface一种标准的Java命名系统接口129.下列哪一个接口定义了用于查找、创建和删除EJB实例A.HomeB.RemoteC.LocalD.Message解答:Aremote接口定义了业务方法,用于EJB客户端调用业务方法。 home接口是EJB工厂用于创建和移除查找EJB实例130.在服务器的网络编程中,解决会话跟踪的方法有:A. 使用Cookie。B. 使用URL重写。C. 使用隐藏的表单域。D. 以上方法都不能单独使用。解答:ABCURL重写就是首先获得一个进入的URL请求然后把它重新写成网站可以处理的另一个URL的过程隐藏域是在页面级保存信息。与其他用户标准控件的区别是,隐藏域不被呈现在页面中。当页面提交的时候,隐藏域中的值将被一同发送给服务端。Cookie是以文本存储于计算机中,使用name-value匹配。一般用户存储标识用户信息131.与HttpSessionListener接口有关的方法是。A.sessionInitialized()B.sessionCreated()C.sessionFinialized()D.sessionDestroyed()解答:BD132.关于JSP生命周期的叙述,下列哪些为真?A.JSP会先解释成Servlet源文件,然后编译成Servlet类文件B.每当用户端运行JSP时,jspInit()方法都会运行一次C.每当用户端运行JSP时,_jspService()方法都会运行一次D.每当用户端运行JSP时,jspDestroy()方法都会运行一次解答:AC133.以下声明正确的是。A.<xml-stylesheet type=”txt/css” href=”abc.css”>B.<?xml-stylesheet type=’txt/css’ href=’abc.css’?>C.<?xml-stylesheet type=”txt/css” href=”abc.css”?>D.<%xml-stylesheet type=”txt/css” href=”abc.css”%>解答BC单引号,双引号都可以使用在属性上。134.下列哪个为JSP的隐含对象。A.envB.pageC.jspinfoD.context解答:BJSP有九个隐士对象request对象:保存了很多客户端请求的信息。response对象:生成服务器端响应,然后将响应结果发送到客户端out对象:表示输出流,此输出流将作为请求发送到客户端session对象:我们写个对象放在这个session对象中,这个对象就在我们的会话中都存在。application对象:我们写个对象放在这个application对象中,这个对象就在整个应用程序中都存在pageContext对象相当于当前页面的容器,可以访问当前页面的所有对象。paget对象:一般我们使用Page指令来替代使用这个对象exception对象:用来处理异常的config对象:一样的我们在页面中是使用很少的,一般会在Servlet中使用这个135.下面的那一个不属于MVC模式中的对象?A. ModelB. ViewC. CollectionD. Controller解答:CMVC是三个单词的缩写,分别为: 模型(Model),视图(View)和控制Controller)。 MVC模式的目的就是实现Web系统的职能分工。 Model层实现系统中的业务逻辑,通常可以用JavaBean或EJB来实现。 View层用于与用户的交互,通常用JSP来实现。 Controller层是Model与View之间沟通的桥梁,它可以分派用户的请求并选择恰当的视图以用于显示,同时它也可以解释用户的输入并将它们映射为模型层可执行的操作。136.要创建一个EJB,必须要至少编写哪些Java类和接口?A. 定义远程(或业务)接口B. 定义本地接口C. 定义Bean接口D. 编写Bean的实现解答:ABC137.XML 是一种元语言, 可以用它来描述其他语言。A.正确B.错误解答:BXML(Extensible Markup Language)即可扩展标记语言,它与HTML一样,都是SGML(Standard Generalized Markup Language,标准通用标记语言)。Xml是Internet环境中跨平台的,依赖于内容的技术,是当前处理结构化文档信息的有力工具。扩展标记语言XML是一种简单的数据存储语言,使用一系列简单的标记描述数据,而这些标记可以用方便的方式建立,虽然XML占用的空间比二进制数据要占用更多的空间,但XML极其简单易于掌握和使用。138.类图用来表示系统中类和类与类之间的关系,它是对系统动态结构的描述。(选择1项)A.正确B.不正确解答:B类图是对系统静态结构的描述。139.哪一个不是EL定义的隐式对象?(选择1项)A cookieB.pageContextC.attributesD initParam解答:C1)pageContext:JSP 页的上下文。它可以用于访问 JSP 隐式对象。2)Param:将请求参数名称映射到单个字符串参数值(通过调用 ServletRequest.getParameter(String name) 获得)。getParameter (String) 方法返回带有特定名称的参数。表达式 $(param.name) 相当于 request.getParameter (name)。3)paramValues:将请求参数名称映射到一个数值数组(通过调用 ServletRequest.getParameter (String name) 获得)。它与 param 隐式对象非常类似,但它检索一个字符串数组而不是单个值。表达式 ${paramvalues.name) 相当于 request.getParamterValues(name)。4)header将请求头名称映射到单个字符串头值(通过调用 ServletRequest.getHeader(String name) 获得)。表达式 ${header.name} 相当于 request.getHeader(name)。5)headerValues将请求头名称映射到一个数值数组(通过调用 ServletRequest.getHeaders(String) 获得)。它与头隐式对象非常类似。表达式 ${headerValues.name} 相当于 request.getHeaderValues(name)。6)cookie将 cookie 名称映射到单个 cookie 对象。向服务器发出的客户端请求可以获得一个或多个 cookie。表达式 ${cookie.name.value} 返回带有特定名称的第一个 cookie 值。如果请求包含多个同名的 cookie,则应该使用 ${headerValues.name} 表达式。7)initParam将上下文初始化参数名称映射到单个值(通过调用 ServletContext.getInitparameter(String name) 获得)。8)pageScope将页面范围的变量名称映射到其值。例如,EL 表达式可以使用 ${pageScope.objectName} 访问一个 JSP 中页面范围的对象,还可以使用 ${pageScope.objectName.attributeName} 访问对象的属性。9)requestScope将请求范围的变量名称映射到其值。该对象允许访问请求对象的属性。例如,EL 表达式可以使用 ${requestScope.objectName} 访问一个 JSP 请求范围的对象,还可以使用 ${requestScope.objectName.attributeName} 访问对象的属性。10)sessionScope将会话范围的变量名称映射到其值。该对象允许访问会话对象的属性。例11)applicationScope将应用程序范围的变量名称映射到其值。该隐式对象允许访问应用程序范围的对象。140.下面哪些属于JSTL中的表达式操作标签。(选择1项)A.<c:out>B.<c:if>C.<c:url>D.<c:catch>解答:A141.Struts框架可以支持以下哪种程序开发语言?(选择1项)A.CB.C++C.JavaD.C#解答:C142.在Servlet处理请求的方式为。(选择1项)A、以进程的方式B、以程序的方式C、以线程的方式D、以响应的方式解答:CServlet采用多线程来处理多个请求同时访问,Servlet容器维护了一个线程池来服务请求。143.javax.Servlet的包中,属于类的是。(选择1项)A、ServletB、GenericServletC、ServletRequestD、ServletContext解答:BServletContext和ServletRequest是该包下的接口。144.以下说法正确的是。(选择2项)A.#CDATA标记表示该元素包含的数据将被解析器解释B.#PCDATA 标记表示该元素包含的数据将不被解析器解释C.#PCDATA 标记表示该元素包含的数据将被解析器解释D.#CDATA 标记表示该元素包含的数据将不被解析器解释解答:AC在DTD中,指定某个标签中的内容是字符数据时,使用(#PCDATA)。而指定标签中某个属性的类型为字符型时,使用CDATA,都将被解析器解释。145.Http缺省的请求方法是。(选择1项)A.PUTB.GETC.POSTD.TRACE解答:B146.在XML中用于注释的符号是。(选择1项)A.<!– –>B.<?– –?>C.<% %>D.<!– –!>解答:A147.DTD与XML Schema都是XML文档。(选择1项)A.正确B.不正确解答:DTD不是XML文件, schema是XML文档148.JDBC中,用于表示数据库连接的对象是。(选择1项)A.StatementB.ConnectionC. DriverManagerD.PreparedStatement解答:BStatement和PreparedStatement都是用来发送和执行SQL语句的DriverManager管理一组驱动程序149.用于调用存储过程的对象是。(选择1项)A.ResultSetB.DriverManagerC.CallableStatemetD.PreparedStatement解答:CResultSet是结果集对象DriverManager管理一组驱动程序PreparedStatement预编译的,用来发送和执行SQL语句的150.如果没有指定Cookie的时效,那么默认的时效是。(选择1项)A.一天B. 永不过期C.会话级别D.一分钟解答:C这是API的原文:By default, -1 indicating the cookie will persist until browser shutdown.151.<?xml version=”1.0″ encoding=”GB2312″?><!ELEMENT Customer EMPTY><!ATTLIST Customer称呼 CDATA #IMPLIED姓名 CDATA #REQUIRED职位 CDATA #REQUIRED>关于上述DTD定义的描述正确的是。(选择1项)A.Customer元素能包含子元素,并且能为空B.Customer元素能包含文本,并且能为空C.Customer元素不能包含文本,也不能包含子元素D.Customer元素的所有实例的“称呼”属性必须有值,不能为空解答:CEMPTY表示元素不能包含文本,也不能包含子元素#IMPLIED属性可以没有值#REQUIRED属性必须有值152.实现现下列哪一种接口的对象,并不需要在web.xml文件内进行额外的设定,Servlet容器就能够回应该对象加入HTTP会话所发生的事件?(选择1项)A.ServletContextListenerB.HttpSessionListenerC.HttpSessionAttributeListenerD.HttpSessionBindingListener解答:DHttpSessionListener只需要设置到web.xml中就可以监听整个应用中的所有session。HttpSessionBindingListener必须实例化后放入某一个session中,才可以进行监听153.下列哪个为JSP的小脚本的标签?(选择1项)A.<% %>B.<@ %>C.<%! %>D.<%– %>解答:A154.以下不属于JSP的标准指令的是。(选择1项)A.TaglibB.IncludeC.ImportD.Page解答:Cimport是page指令的一个属性。155.对于每一个网站访问用户都要访问的变量,应该将它设为________变量。(选择1项)A. SessionB. RequesC. ResponseD. Application解答:DApplication应用程序级变量156.EJB类库存在于Java的哪个版本中?(选择1项)。A. J2SEB. J2EEC. J2MED. J2NE解答:BJava分为三个体系JavaSE(Java2 Platform Standard Edition,java平台标准版),JavaEE(Java 2 Platform,Enterprise Edition,java平台企业版),JavaME(Java 2 Platform Micro Edition,java平台微型版)。EJB属于JavaEE版本157.察看下列JSP内容<html><body><% for (int i=0;i<3;i++){ %>out.print(i*2);<% } %></body></html>当这个JSP被运行时,其结果是什么?(选择1项)A.此JSP因为语法错误,无法运行B.显示出0,2,4C.显示出0,2,4,6D.显示出out.print(i*2) out.print(i*2) out.print(i*2)解答:D158假设A.jsp内设定一个<jsp:useBean>元素:<jsp:useBean id=”bean1” class=”myBean” />下列哪一个为真?(选择1项)A.bean1的存取范围(scope)默认为applicationB.在HTTP会话内可以存取bean1C.只有在A.jsp内可以存取bean1D.在A.jsp所属的Web应用程序内均可存取bean1解答:Cbean1的存取范围(scope)默认为page(题有一点问题 javabean的规则是要放在一个包中)159在MVC设计模式中,JavaBean的作用是。(选择1项)A、ControllerB、ModelC、业务数据的封装D、View解答:B同137题160在J2EE中属于Web层的组件有(选择1项)A. HTMLB. EJBC. AppletD. JSP解答:D161单元测试是在软件开发过程中的哪个阶段完成的? (选择1项)A. 可行性研究和计划B. 概要设计C. 实现D. 使用和维护解答:C162在J2EE的Web应用中,编译后的class文件存放的目录为(选择1项)A. classes目录B. images目录C. jar目录D. 任意位置解答:A163 HttpServlet中,用来处理POST请求的方法是(选择1项)A. doHeadB. doGetC. doPostD. doPut解答:C164.DOM中XMLDOMnodelist的length属性的表示是:(选择1项)A. 该对象中文本字符的长度B. 该对象中元素节点的数量C. 该对象中节点的数量D. 该对象中文档对象的数量解答:Alength 属性返回注释节点中的文本长度,以字符数计。165.如何创建Cookie? (选择1项)A. 使用new Cookie语句B. 调用response.addCookie方法C. 使用Cookie的setMaxAge方法D. setCookie方法解答:B166. 关于Web应用程序,下列说法错误的是( )。A.WEB-INF目录存在于web应用的根目录下B. WEB-INF目录与classes 目录平行C. web.xml在WEB-INF目录下D. Web应用程序可以打包为war文件解答:B167有关Servlet的生命周期说法正确的有( )。A.Servlet的生命周期由Servlet实例控制B.init()方法在创建完Servlet实例后对其进行初始化,传递的参数为实现ServletContext接口的对象C.service()方法响应客户端发出的请求D.destroy()方法释放Servlet实例解答:CServlet 生命周期就是指创建 Servlet 实例后响应客户请求直至销毁的全过程.Serlvet 生命周期的三个方法:init()–>service()–>destroy(),Servlet生命周期的各个阶段: 实例化:Servlet 容器创建Servlet 类的实例对象初始化:Servlet 容器调用 Servlet 的 init()方法服务:如果请求 Servlet,则容器调用 service()方法销毁:销毁实例之前调用 destroy()方法168.以下web.xml片断( )正确地声明servlet 上下文参数。A<init-param><param-name>MAX</param-name><param-value>100</param-value></init-param>B<context-param><param name=”MAX” value=”100″ /><context-param>C<context><param name=”MAX” value=”100″ /><context>D<context-param><param-name>MAX</param-name><param-value>100</param-value><context-param>解答:A169.以下( )可用于检索session属性userid的值。A.session. getAttribute (“userid”);B.session. setAttribute (“userid”);C.request. getParameter (“userid”);D.request. getAttribute (“userid”);解答:A170.下列JSP代码:<html><body><%for(int i = 0; i < 10; i++) {//1}%></body></html>以下( )可放置在//1处,不会发生编译错误。A <%= i %>B <b>i</b>C %><%= i %><%D不写任何内容解答:CD171.考虑下面两个JSP文件代码片断: test1.jsp:<HTML><BODY><% pageContext.setAttribute(”ten”,new Integer(10));%>//1</BODY></HTML>test2.jsp:数字为:<%= pageContext.getAttribute(”ten”)%>以下( )放置在test1.jsp中的//1处,当请求test1.jsp时正确输出test2.jsp中的内容。A.<jsp:include page=”test2.jsp” />B.<jsp:forword page=”test2.jsp” />C.<%@ include file=”test2.jsp” %>D.由于pageContext对象的scope属性为page,所以test2.jsp不能访问test1.jsp定义的属性解答:CpageContext setAttribute(”ten”,new Integer(10));能取到的范围是page,也就是当前页面。<%@includefile=””%>:编译时包含,静态的,JSP引擎将对所包含的文件进行语法分析.<jsp:include page=””/>:运行时包含,静态和动态的都可以,JSP引擎不对所包含的文件进行语法分析,只获得处理的结果172.有关JSP隐式对象,以下( )描述正确。A.隐式对象是WEB容器加载的一组类的实例,可以直接在JSP页面使用B.不能通过config对象获取ServletContext对象C.response对象通过sendRedirect方法实现重定向D.只有在出错处理页面才有exception对象解答:ACD可以通过config对象获取ServletContext对象173. 考虑下面JSP文件代码片断:<HTML><BODY><jsp:include page=”test2.jsp”><jsp:param name=”username” value=”accp”/></jsp:include></BODY></HTML>以下( )代码片断放置在test2.jsp中不会导致错误。A.<jsp:getParam name=”username”/>B.<jsp:include param =”username”/>C.<%=request.getParameter(“username”)%>D.<%=request.getAttribute(“username”)%>解答:C174.以下是login.jsp文件的代码片断:<%@ page isELIgnored=”false”%><html><body><FORM action=”login.jsp” method=”GET”><input type=”text” name=”name” value=”${param['name']}”><input type=”submit” value=”提交”></FORM><P>用户名为: ${param.name}</body></html>以下( )描述正确。A.发生运行错误B.页面会出现一文本框,并且文本框中内容为${param['name']}C.当用户输入名字并单击“提交”按钮时,在同一页面中的“用户名为:”字样后面会显示用户输入的内容D.当用户输入名字并单击“提交”按钮时,在同一页面中的“用户名为:”字样后面会显示${param.name}解答:C在每个JSP中也可以指定是否该JSP使用EL。在page directive中的isELIgnored属性用来指定是否忽略。格式为:<%@ page isELIgnored=”true|false”%>如果设定为真,那么JSP中的表达式被当成字符串处理。175.doAfterBody()方法是在( )接口中定义的。A.TagB.IterationTagC.BodyTagD.TagSupport解答:B176.下面代码片断在浏览器中输出结果为( )。<c:set var=”myVar” scope =”session”>2+3</c:set><c:out value=”${myVar}”/>A.0B.5C.2+3D.无输出解答:C<c:set>标签主要用来将变量保存到JSP 的会话中或JavaBean 的属性中。<c:set>的语法格式为: <c:set value=”value” var=”varName” [scope="{ page|request|session|application }"]/> 上述的表达式实现的功能是将 value 的值储存至范围为scope 的 varName 变量之中,还可以将 value 的值储存至 target 对象的属性中.如果题中2+3改成${2+3}那么结果就是5.177.编写一个Filter,除继承HttpServlet类外还需要( )。A.继承Filter 类B.实现Filter 接口C.继承HttpFilter 类D.实现HttpFilter接口解答;B178.以下哪个Hibernate主键生成策略是实现主键按数值顺序递增的?A、incrementB、identityC、sequenceD、native解答:Aincrement生成策略:当Hibernate准备在数据库表中插入一条新记录时,首先从数据库表中获取当前主键字段的最大值,然后在最大值基础上加1,作为当前持久化对象的标识符属性值。这种策略即increment生成策略,用其生成的标识符属性的类型可以是long、short、int及其封装类的类型identity生成策略:在MS SQL Server、MySQL和DB2等数据库中可以设置表中某一个字段的数值自动增长,identity生成策略通过这种方式为当前记录获取主键值的同时为持久化对象赋予标识符属性值。sequence生成策略:在Oracle、DB2和PostgreSQL等数据库中创建一个序列(sequence),然后Hibernate通过该序列为当前记录获取主键值,进而为持久化对象赋予标识符属性值。native生成策略:由Hibernate根据所使用的数据库支持能力从identity、sequence或者等生成策略中选择一种179.在jsp中,page指令的()属性用来引入需要的包或类。A、extendsB、importC、languageD、contentType解答:Bpage指令属性简要介绍:language=”java”声明脚本语言的种类,暂时只能用”java”extends=”package.class”标明JSP编译时需要加入的Java Class的全名,但是得慎重的使用它,它会限制JSP的编译能力.import=”{package.class | package.* }, …”需要导入的Java包的列表,这些包就作用于程序段,表达式,以及声明。下面的包在JSP编译时已经导入了,所以你就不需要再指明了:java.lang.*javax.servlet.*javax.servlet.jsp.*javax.servlet.http.*session=”true | false”设定客户是否需要HTTP Session.如果它为true,那么Session是有用的。如果它有false,那么你就不能使用session对象,以及定义了scope=session的<jsp:useBean>元素。这样的使用会导致错误. 缺省值是true.buffer=”none | 8kb | sizekb”buffer的大小被out对象用于处理执行后的JSP对客户浏览器的输出。缺省值是8kbautoFlush=”true | false”设置如果buffer溢出,是否需要强制输出,如果其值被定义为true(缺省值),输出正常,如果它被设置为false,如果这个buffer溢出,就会导致一个意外错误的发生.如果你把buffer设置为none,那么你就不能把autoFlush设置为false.isThreadSafe=”true | false”设置Jsp文件是否能多线程使用。缺省值是true,也就是说,JSP能够同时处理多个用户的请求,如果设置为false,一个jsp只能一次处理一个请求info=”text”一个文本在执行JSP将会被逐字加入JSP中,你能够使用Servlet.getServletInfo方法取回。errorPage=”relativeURL”设置处理异常事件的JSP文件。isErrorPage=”true | false”设置此页是否为出错页,如果被设置为true,你就能使用exception对象.contentType=”mimeType [ ;charset=characterSet ]” | “text/html;charset=ISO-8859-1″设置MIME类型 。缺省MIME 类型是: text/html, 缺省字符集为 ISO-8859-1.180.正则表达式”\d+\.?\d*”在匹配下列字符串时结果是失败的是?A 12.5B 1.25C 以上都成功D 以上都失败解答:B\d+ 表示可以出现1次或是n次数字\. .? 表示可以“.”可以出现一次,也可以不出现\d* 表示可以出现0次或是n次数字