J2EE复习题
- 格式:wps
- 大小:52.00 KB
- 文档页数:6
J2EE期末考试试题(笔试)A卷姓名:学号:注意事项:(考试时间90分钟)1)整个试卷中不得做任何形式的书写或标记,是否试卷成绩做废;2)认真准确填写并核对答题卡中的各项内容,因填涂错误造成的任何后果,由考生自负;3)考试完毕,不得将所有考卷.答题卡.草稿纸带离考场,否则试卷成绩作废;4)作弊,雷同答卷,成绩一律为0分答题结束后,必须经监考老师确认考卷,答题卡,草稿纸已经提交后,方可离开考场一、选择题(单项选择,每题2分,共50题)1、下面对Web应用开发中Servlet组件说法错误的是。
A)Servlet是按照接受请求/返回响应的模式工作的B)运行于Servlet容器中,是被动态加载的C)在Struts框架中,Servlet充当模型组件D)在Struts框架中,Servlet充当控制器组件2、在Struts应用中,能在下列哪几种范围内共享数据说法错误的是。
A)只有request与sessionB)requestC)sessionD)application3、下面那个选项不属于MVC三个核心模块。
A)模型B)视图C)数据库连接D)控制器4、下列关于Struts框架的说法中,正确的是。
A)Struts实质是在JSP Model2的基础上实现的一个MVC框架B)在Struts框架中,模型是由实现业务逻辑的JavaBean与EJB组件构成C)在Struts框架中,视图是由一组JSP文件组成D)以上都是5、关于在web.xml文件中配置欢迎文件清单说法错误的是。
A)使用<welcome-file-list>元素配置欢迎清单B)只能配置一个欢迎文件C)可以配置多个欢迎文件D)Web容器调用会依次寻找欢迎文件,直到找到为止6、下列哪个元素可以配置数据源。
A)<formbean>元素B)<data-sources>元素C)<global-forward>元素D)<message-resources>元素7、下列对<action-mappings>元素属性描述正确的有。
单项选择题1.应用程序的main方法中有以下语句,则输出的结果是()。
int[] x={122,33,55,678,-987};int max=x[0];for(int i=1;i<x.length;i++){if(x[i]>max)max=x[i];}System.out.println(max);A. 678 B. 122 C. -987 D. 332. 在Struts应用中,能在下列哪几种范围内共享数据说法错误的是()。
A. 只有request与sessionB. requestC. sessionD. application3. 下列关于Struts框架的说法中,正确的是()。
A. Struts实质是在JSP Model2的基础上实现的一个MVC框架B. 在Struts框架中,模型是由实现业务逻辑的JavaBean与EJB组件构成C. 在Struts框架中,视图是由一组JSP文件组成D. 以上都是4. 关于在web.xml文件中配置欢迎文件清单说法错误的是()。
A. 使用<welcome-file-list>元素配置欢迎清单B. 只能配置一个欢迎文件C. 可以配置多个欢迎文件D. Web容器调用会依次寻找欢迎文件,直到找到为止5. 下列哪个元素可以配置数据源()。
A. <formbean>元素B. <data-sources>元素C. <global-forward>元素D. <message-resources>元素6.下列程序段执行后的结果是()。
String s=new String("abcdefg");for(int i=0;i<s.length();i+=2){System.out.print(s.charAt(i));}A. acegB. ACEGC. abcdefgD. abcd7.下面对Web应用开发中Servlet组件说法错误的是()。
一、选择题1)、在J2EE中,<%=”2”+4%>将输出()。
(选择一项)a) 2+4 b) 6 c) 24 d) 不会输出,因为表达式是错误的2)J2EE中,JSP表达式语言的语法是()。
(选择一项)a) {EL expression}b) ${EL expression}c) @{EL expression} d) &{EL expression}3)在J2EE中,下列()语句可以获取页面请求中的一个文本框的输入(文本框的名字为title)。
(请选择一项)a) response.getParameter(“title”); b) request.getAttribute(“title”); c) requert.getParameter(“title”); d) requert.getParameters(“title”);4)J2EE中,HttpSession接口位于()包中。
(选择一项)a) javax.servlet b) javax.servlet.http c) javax.servlet.http.session d) javax.servlet.session5)在J2EE中,test.jsp文件中有如下一行代码:<jsp:useBean id=”user”scope=”____”type=”erBean”/> 要使user对象在用户对其发出请求时存在,下划线中应填入()。
(选择一项)a) Page b) request c) Session d) application6)在J2EE MVC设计模式体系结构中,()是实现控制器的首选方案。
(选择一项)a) JavaBean b) Servlet c) JSP d) HTML e) XML7) 在J2EE中,若要在JSP正确使用标签:<x:getKing/>,在jsp中声明的taglib指令为:<%@taglib uri=”/WEB-INF/myTags.tld”prefix=”_____”%>,下列线处应该是()。
1、简述J2EE的四层模型。
(1)运行在客户端机器上的客户层组件(2)运行在J2EE服务器上的Web层组件(3)运行在J2EE服务器上的业务逻辑层组件(4)运行在EIS服务器上的企业信息系统(Enterprise information system)层软件2、什么是对象持久化?即把数据(如内存中的对象)保存到可永久保存的存储设备中(如磁盘)。
3、简述一下OR MAPPING,为什么我们使用它?ORM(Object Relational Mapping)是一种为了解决面向对象与关系型数据库存在的互不匹配的现象的技术。
简单说:ORM是通过使用描述对象和数据库之间映射的元数据,将Java程序中的对象自动持久化到关系数据中。
本质上就是将数据从一种形式转换到另外一种形式。
原因:用它来架起对象和关系型数据库的桥梁,可解决对象层次的映射、对象关系的映射以及对象的持久化问题。
4、简述一下如何使用Hibernate实现对象持久化的过程(可画图或用伪码描述)STEP 1:创建Configuration对象。
在这一步中主要为了进行配置文件的装载操作,读取所有的配置文件并进行解析STEP 2: 创建SessionFactory对象。
通过创建好的Configuration对象可以创建一个sessionFactory对象的实例,同时是生成Session对象实例的工厂,他在整个应用中应该是唯一的。
STEP 3:创建Session对象。
Session对象类似于数据库的连接对象,可以理解为与数据库建立的一个连接,但是他的功能要比JDBC中的Connection对象丰富很多。
STEP 4:开始一个事务。
在Java中定义一个事务操作的开始,这是使用Hibernate进行持久化操作必不可少的步骤STEP 5:进行持久化操作。
在这个步骤中可以读取或者保存Java对象。
STEP 6:结束事务。
在操作完成之后还要进行显式的结束事务的操作。
J2EE简答题复习(含答案)1、forward和sendRedirect的区别forward是request的方法,sendRedirect是response的方法,使用forward延续之前的请求,地址栏地址不会转变,使用sendRedirect会开启新的请求,地址栏地址转换2、视图层调用了服务层好不好,该怎么办?不好,因为视图层和服务层之间还有控制层,不应该越级调用3、Service层的简介在内存中以对象的形式处理业务逻辑4、有人认为MVC模式对M的支持很弱,为什么?因为mvc模式的m中,只有对象的get、set和validate方法,只支持领域对象,广义上的m应该包括实体对象和服务对象5、普通的Action只有一个execute()方法,有何缺点,如何改进?只有一个execute()方法导致类的数目太多改进:把一个execute()方法变成多个方法,在url中加入某变量,在配置文件中设置参数,告知核心控制器调用哪个方法6、AOP能代替OOP吗?不能。
AOP侧重实现功能,而OOP侧重对象,AOP实现多种功能,并把这些功能植入各个对象,不能代替,应该两种结合起来使用7、何谓IOC控制反转,也叫DI,依赖注入,由容器为类注入某些对象,在配置文件中配置,类的实例要向容器申请。
8、Struts中自定义控制器的方法execute()的参数及解释public ActionForward execute(ActionMapping mapping,ActionForm form,HttpServletRequest request,HttpServletResponse response) {return mapping.findForward("error");}ActionMapping 作用就是帮助控制其将请求映射到操作ActionForm 作用就是接受和存储表单form中接受的数据(相当于bean)Request 请求Response 回复9、如何引入struts下载struts的jar包,在web.xml中以servlet的方式配置该类,来映射到某些类10、servletContext能否做购物车能,但是这种做法不提倡,servletContext相当于jsp中的application,会涵括整个项目的所有人的购物车信息,会使得结构复杂,对服务器而言,负担比较大1。
1、ORM 有什么好处?AA).能进行关系对象的映射B).具有控制器功能C).能在服务器端保存客户端状态D).向DTO传递数据2、在使用property标签时,如果要显示标签的代码,需要设置下面哪个属性的属性值? CA).defaultB).valueC).escapeD).id3、以下哪一种检索策略利用了外连结查询?CA).立即检索B).延迟检索C).迫切左外连结检索D).迫切右外连结检索4、如果你不能确定你要寻找的对象的持久化标识符,那么你需要使用查询,使用Session 的什么方法? AA).createQuery()B).query()C).queryAll()D).queryObject()5、HQL查询语句from Cat as cat,不仅仅返回Cat的实例,而且还返回____的实例。
BA).Cat 父类B).Cat 子类C).Cat 实现接口D).Cat 兄弟类6、下面哪些子句不支持算数表达式?CA).compute by 和order byB).compute by 和insert byC).order by 和group byD).insert by 和group by7、使用Hibernate 的QBC 查询,要使用SQL 中的类似select count(*) from tablename 方法求出记录数,必须使用哪一个类?BA).RestrictionsB).ProjectionsC).CriteriaD).Criteron8、Struts2中默认的主题是哪一种?BA).simpleB).xhtmlC).css_xhtmlD).ajax9、在Hibernate 中,关于数据库的方言,下面哪个说法是正确的?DA).可以不写数据库方言B).数据库方言没有作用,可以随便写C).有通用的数据库方言可以使用D).数据方言对应于每个数据库,主要用于产生SQL 语句数据方言对应于每个数据库10、在JEE企业级开发中,SSH框架中Struts主要是完成Web的MVC中的哪个角色?AA).C(控制器)和V(视图)B).M (模型)和C(控制器)C).只有C(控制器)D).V(视图)和M(模型)11、在Struts2的包配置中,下面哪个属性是必须指定的?CA).namespaceB).extendsC).nameD).abstract12、通过实现下面哪个接口,可以很容易地实现一个拦截器类的编写?BA).ActionB).InterceptorC).AbstractInterceptorD).MethodInterceptor13、Action运行期间所有用到的数据都保存在下面哪个对象中?DA).RequestB).SessionC).ResponseD).ActionContext14、在使用SSH进行JEE企业级开发中,通常把模板文件放置在/WEB-INF目录下的原因是?AA).因为模板文件不能直接访问,为了防止用户直接访问模板文件,所以放在/WEB-INF目录下,让这些文件直接访问不到。
1、ORM 有什么好处AA).能进行关系对象的映射B).具有控制器功能C).能在服务器端保存客户端状态D).向DTO传递数据2、在使用property标签时,如果要显示标签的代码,需要设置下面哪个属性的属性值 CA).defaultB).valueC).escapeD).id3、以下哪一种检索策略利用了外连结查询CA).立即检索B).延迟检索C).迫切左外连结检索D).迫切右外连结检索4、如果你不能确定你要寻找的对象的持久化标识符,那么你需要使用查询,使用Session 的什么方法AA).createQuery()B).query()C).queryAll()D).queryObject()5、HQL查询语句from Cat as cat,不仅仅返回Cat的实例,而且还返回____的实例。
BA).Cat 父类B).Cat 子类C).Cat 实现接口D).Cat 兄弟类6、下面哪些子句不支持算数表达式CA).compute by 和order byB).compute by 和insert byC).order by 和group byD).insert by 和group by7、使用Hibernate 的QBC 查询,要使用SQL 中的类似select count(*) from tablename 方法求出记录数,必须使用哪一个类BA).RestrictionsB).ProjectionsC).CriteriaD).Criteron8、Struts2中默认的主题是哪一种BA).simpleB).xhtmlC).css_xhtmlD).ajax9、在Hibernate 中,关于数据库的方言,下面哪个说法是正确的DA).可以不写数据库方言B).数据库方言没有作用,可以随便写C).有通用的数据库方言可以使用D).数据方言对应于每个数据库,主要用于产生SQL 语句数据方言对应于每个数据库10、在JEE企业级开发中,SSH框架中Struts主要是完成Web的MVC中的哪个角色AA).C(控制器)和V(视图)B).M (模型)和C(控制器)C).只有C(控制器)D).V(视图)和M(模型)11、在Struts2的包配置中,下面哪个属性是必须指定的CA).namespaceB).extendsC).nameD).abstract12、通过实现下面哪个接口,可以很容易地实现一个拦截器类的编写BA).ActionB).InterceptorC).AbstractInterceptorD).MethodInterceptor13、Action运行期间所有用到的数据都保存在下面哪个对象中DA).RequestB).SessionC).ResponseD).ActionContext14、在使用SSH进行JEE企业级开发中,通常把模板文件放置在/WEB-INF目录下的原因是AA).因为模板文件不能直接访问,为了防止用户直接访问模板文件,所以放在/WEB-INF目录下,让这些文件直接访问不到。
J2EE技术复习题1.在JSP中如果要导入java.io.* 包,应该使用_________ ______指令。
(A)A. pageB. taglibC. includeD. forward2.在MVC模式中,核心内容为___ ___。
(C)A. viewB. controlC. modelD. 不确定3.在javaScrpt中window对象的____ ____方法用于打开一个新窗口。
(C)A. openWindow()B. window()C. open()D. close()4.在javaScrpt中window对象的__ 方法用于关闭当前窗口。
(d)A. open()B. confirm()C. alert()D. close()5.在JSP应用程序中要求删除所有photo目录中的的文件,但是保留文件夹,下列代码中空缺位置最适合的选项为_____ ____________。
(A)String path=request.getRealPath("photo");File fp1=new File(path);File[] files=fp1.listFiles();for(int i=0;i<files.length;i++){if(__________________________){files[i].delete();}}A. files[i].isFile()B. files[i].isDirectory()C. !files[i].isFile()D. ! files[i].isDirectory()6.创建JSP应用程序时,配置文件web.xml应该在程序下的___ ____目录中。
(c)A. adminB. servletC. WEB-INFD. WebRoot7.如果编写一个计数器程序,用来记载当前网站的访问量,最好采用JSP中的____ _对象。
1. 容器设置定制了由 J2EE 服务器提供的底层支持,以下()一般不由容器提供服务支持。
(第 2 章)A. 安全性。
B. 事务管理服务。
C. JNDI 命名服务。
D. HTML 解析。
答案. D2. 要获得数据库连接,通常是一项耗时的工作,而且连接数非常有限。
因此,J2EE容器通过()来解决数据库连接问题。
(第 2 章)A. 远程调用模型。
B. 数据库连接池模型。
C. JNDI 寻址模型。
D. 事务管理模型。
答案. B3. 为了支持 J2EE 应用程序,在会将以下除了()的其他几个部署到 J2EE 容器中。
(第 2章)A.EJB 容器。
B.Web 容器。
C.客户端应用程序容器。
D.数据库管理答案. D4.()管理所有的 JSP、JSTL 和 Servlet 等 Web 组件的运行,这些组件主要负责程序和Web 通信。
(第 2 章)A. Web 容器。
B. EJB 容器。
C. JMS 容器。
D. JNDI 容器。
答案. A5.()规范为开发人员提供了一个用于企业消息服务的标准 JAVA API。
(第 2 章)A. JMS。
B. JNDI。
C. JDBC。
D. JavaMail。
答案. AJMS(Java Messaging Service)称为Java消息服务,是Java平台上有关面向消息中间件的技术规范,它便于消息系统中的Java应用程序进行消息交换,并且通过提供标准的产生、发送、接收消息的接口简化企业应用的开发.6. 下面的代码是一个典型的()。
(第 3 章)import javax.ejb.Stateless.*;public class CalculateEJBBean implements CalculateEJB{int48 value=0;publicString incrementValue(){ value++;return "value incremented by 1"; }A.实体 Bean。
J2EE程序设计复习题一、选择题1. EJB是:[B]A. 服务器端产品B. 服务器端组件开发架构C. 特殊类型的JavaBeanD. 用于实现商业逻辑2. EJB架构主要使用的设计模式是:[AC]A. Proxy 代理B. StrategyC. Delegate 委派D. Responsibility Chain3. EJB的类型主要有:[CDF]A. Command BeanB. Data Access BeanC. Session BeanD. Entity BeanE. Java BeanF. Message-Driven Bean4. Session Bean的组成可以包括:[ACEFGI]A. Home interfaceB. A thread classC. Remote interfaceD. Primary key classE. Local home interfaceF. Local interfaceG. ejb-jar.xmlH. application.xmlI. Bean class5. Entity Bean的组成可以包括:[ACDEFGI]A. Home interfaceB. web.xmlC. Remote interfaceD. Primary key classE. Local home interfaceF. Local interfaceG. ejb-jar.xmlH. ejb.xmlI. Bean class6. Session Bean按是否跟踪客户状态分:[BE]A. State Session BeanB. Stateless Session Bean 有状态C. BMT Session BeanD. CMT Session BeanE. Stateful Session Bean7. Entity Bean根据数据持久性的处理方式分:BCA. BMT Entity BeanB. BMP Entity BeanC. CMP Entity BeanD. CMT Entity Bean8. Entity Bean的事务处理方式可采用:CA. BMPB. BMTC. CMTD. CMP9. Session Bean和Message-Driven Bean的事务处理方式可采用: BA. BMT和CMPB. BMT和CMTC. BMP和CMPD. BMP和CMT10. 申明方式的事务处理的属性有:ACDFGHA. SupportsB. ShouldC. NotSupportedD. RequiredE. MaybeF. RequiresNewG. MandatoryH. Never11. Local interface引入的目的是: BA. 本地客户程序才能调用EJBB. 为了性能C. 解决Session Bean与Enity Bean之间的交互12. 对于Session Bean和Entity Bean, 为远程用户定义的home interface必须继承B, componentinterface必须继承D;为本地客户定义的home interface必须继承F, component interface必须继承A ;Session Bean的bean class必须实现C , Entity Bean的bean class 必须实现。
填空题1.MVC模式中,M代表(Model(模型)),V代表(View(视图)),C代表(Controller(控制器))。
2.Struts2框架主要有两个核心配置文件:struts.properties和(struts.xml)。
3.struts2的框架校验包含字段校验和(非字段校验)。
单项选择题1.J2EE中,( D )类的()方法用于创建对话。
A.HttpServletRequest、getSession B.HttpServletResponse、newSession C.HtttpSession、newInstance D.HttpSession、getSession2.下列哪个不是HTML的常用标记(D)A.<html> B.<head> C.<body> D.<Book>3.在Servlet里,能正确获取session的语句是(A)A.HttpSession session = request.getSession( ); B.HttpSession session = request.getHttpSession( );C.HttpSession session = response.getSession( ); D.HttpSession session = response. getHttpSession ( );4.下列(A)实现单击超级链接是弹出确认对话框,询问用户是否真的删除。
A. <a href="book.jsp?bid=1" onClick="return confirm('你真的要删除吗?');">删除</a>B. <a href="book.jsp?bid=1" onClick="alert('你真的要删除吗?');">删除</a>C. <a href="book.jsp?bid=1" onClick="return alert('你真的要删除吗?');">删除</a>D. <a href="book.jsp?bid=1" onChange="confirm('你真的要删除吗?');">删除</a>5.不属于Action接口中定义的字符串常量的是( B )A.INPUT B.FAILURE C.SUCCESS D.ERROR 6.J2EE中,JSP EL表达式:${user.loginName}的执行效果等同于(A)。
A.<%=user.getLoginName()%> B.<%=user.getLoginName();%> C.<%=user.loginName%> D.<%=user.loginName;%>7.在J2EE中,下列( C )语句可以获取页面请求中的一个文本框的输入的内容(文本框的名字为:title)。
A.response.getParameter(“title”); B.request.getAttribute(“title”); C.request.getParameter(“title”); D.request.getParamet ers(“title”); 8.给定JSP程序源码如下,该JSP运行后输出的结果是(B )<html><% int count =1;%> Count: <%=++count%></html>A.Count:1 B.Count:2 C.1:2 D.Count9.在JavaScript中window对象的(D )方法用于关闭当前窗口。
A.open() B.confirm() C.alert() D.close()10.Tomcat服务器的默认端口为(C)A.8888 B.8001 C.8080 D.8011.资源文件的后缀名为( D )A.doc B.txt C.property D.properties 12.在Servlet里,能正确获取session的语句是(A)A.HttpSession session = request.getSession( ); B.HttpSession session = request.getHttpSession( );C.HttpSession session = response.getSession( ); D.HttpSession session = response.getHttpSession ( );13.J2EE中,JSP EL表达式:${user.loginName}的执行效果等同于(A)。
A.<%=user.getLoginName()%> B.<%=user.getLoginName();%> C.<%=user.loginName%> D.<%=user.loginName;%>14.下列(A)实现单击超级链接是弹出确认对话框,询问用户是否真的删除。
A. <a href="book.jsp?bid=1" onClick="return confirm('你真的要删除吗?');">删除</a>B. <a href="book.jsp?bid=1" onClick="alert('你真的要删除吗?');">删除</a>C. <a href="book.jsp?bid=1" onClick="return alert('你真的要删除吗?');">删除</a>D. <a href="book.jsp?bid=1" onChange="confirm('你真的要删除吗?');">删除</a>15.不属于Action接口中定义的字符串常量的是( B )A.INPUT B.FAILURE C.SUCCESS D.ERROR16.下列哪一个类是让一个Action 类能够更快开始工作的基类( B )A.ActionContext B.ActionSupport C.V alidate D.Action17.重向可以使用(A)方法。
A. response.sendRedirect(“login.jsp”);B. request.sendRedirect(“login.jsp”);C. <jsp :forward page= “login.jsp”/>D. <forward page= “login.jsp”/> 18.在JSP页面中可以通过Struts 2提供的(A)标签来输出国际化信息A.<s:text> B.<s: texts > C.<s: input > D.<s: submit >19.在控制器类中一般需要添加相应属性的(A)和()A.setter方法getter方法B.is方法C.equalse方法D.as方法20.创建JSP应用程序时,配置文件web.xml应该在程序下的( C )目录中。
A.admin B.servlet C.WEB-INF D.WebRoot21.不属于Struts 2表单标签库的是(A)A.<select> B.<s: submit > C.<s: textfield > D.<s: textarea >22.如果在网页上显示一幅图片,下面哪句代码是正确的(A)。
A.<img src="logo.gif"> B.<img alt="logo.gif" lowsrc="pre_logo.gif">C.<img href="logo.gif"> D.<img name="logo.gif"> 23.设在表单中有一组复选钮标记,如下列代码:<form action=”register.jsp”>请选择喜欢的城市:<input type=”checkbox” name=”city” value=”长春”>长春<br><input type=”checkbox” name=”city” value=”北京”>北京<br><input type=”checkbox” name=”city” value=”大连”>大连<br><input type=”checkbox” name=”city” value=”上海”>上海<br></form>如果在register.jsp是取city的值,最适合的方法为(C )。
A. String ci ty = request.getParameter(“city”);B. String [] cities = request.getParameter(“city”);C. String [] cities = request.getParameterV alues(“city”);D. String city = request.getAttribute(“city”);24.在J2EE中,若web应用程序的文档根目录名为Book,类文件,类文件com.util.Test.class 应该放在(C)A.Book/classes/com/util/Test.classB.Book/WEB-INF/com/util/Test.classC.Book/ WEB-INF/classes/com/util/Test.classD.Book/ WEB-INF/lib/classes/com/util/Test.class多项选择题1.关于struts2异常处理,说法正确的是(ABC )A.struts2的异常处理机制,是通过在struts.xml中配置<exception-mapping……/>元素完成的。