J2EE考试题目及答案
j2ee考试题及答案
J2EE考试题及答案
一、概述
本文档收集了一些J2EE考试题与相应的答案。
这些问题涵盖了
J2EE的不同方面,包括Servlet、JSP、EJB、Web服务等。
下面依次列出各个部分的考试题目及答案。
二、Servlet
1. Servlet的生命周期是什么?
答案:
Servlet的生命周期包括以下4个阶段:
1.实例化:当容器接收到对Servlet的请求时,会创建Servlet的实例。
2.初始化:在创建完实例后,容器会调用init方法对Servlet进行初始化。
这个方法只会在Servlet的生命周期中被调用一次。
3.服务处理:一旦初始化完成,Servlet就可以处理来自客户端的请求。
容器会多次调用Servlet的service方法来处理不同的请求。
4.销毁:当容器关闭或发生其他终止条件时,容器会调用destroy 方法销毁Servlet实例。
在销毁之前,容器会先调用Servlet的destroy方法进行一些清理工作。
2. Servlet的线程模型是什么?答案:
Servlet的线程模型是。
J2EE开发基础(习题卷20)
J2EE开发基础(习题卷20)说明:答案和解析在试卷最后第1部分:单项选择题,共57题,每题只有一个正确答案,多选或少选均不得分。
1.[单选题]以下哪些不属于Spring 4.3版本中Bean的作用域()A)applicationB)requestC)responseD)globalSession2.[单选题]在Servlet 过滤器的生命周期方法中,每当传递请求或响应时, web 容器会调用( )方法。
A)serviceB)initC)destroyD)doFilter3.[单选题]下面一对多关联的配置中,存在哪些错误( )。
<set name="orders" inverse="false" cascade="true"><one-to-many class="com.x.entity.Order"column="customer_id" /></set>A)inverse 属性不可以设置为falseB)cascade属性可设置为trueC)class="com.x.entity.Order" 应为type="com.x.entity.Order"D)column 属性不可再<one-to-many> 节点内设置4.[单选题]在JSP页面中可以通过Struts 2 提供的()标签来输出国际化信息A)<s: texts >B)<s: submit >C)<s: input >D)<s:text>5.[单选题]<html ><body><jsp:useBean id="address" class="Address Bean" / ><jsp:setPropertyname="address" property="city" / ><jsp:get Property name="address" property="city" / ></body ></html >如果用下面的URL访问,页面会输出什么结果? ( )http://localhost:8080/ address.jsp?city=ChicagoA)MiamiB)ChicagoC)以上都不对D)Los Angeles6.[单选题]在web.xml文件中,描述了一个Servlet,其中( )指定了Servlet类的访问路径。
j2ee考试题及答案ejb
j2ee考试题及答案ejb1. 什么是EJB(Enterprise JavaBeans)?EJB是一种服务器端组件架构,用于开发和部署多层结构的、分布式的、面向对象的Java应用程序。
EJB组件提供了一种结构化的方法来创建可重用的、可伸缩的和事务性的业务逻辑。
2. EJB有哪些类型?EJB主要有三种类型:会话Bean(Session Beans)、实体Bean(Entity Beans)和消息驱动Bean(Message-Driven Beans)。
3. 会话Bean(Session Beans)的作用是什么?会话Bean代表与客户端的短暂交互,它们通常用于实现应用程序的业务逻辑,但不保存数据。
会话Bean可以是无状态的(Stateless)或有状态的(Stateful)。
4. 实体Bean(Entity Beans)和会话Bean(Session Beans)有什么区别?实体Bean代表业务实体,通常与数据库中的持久数据相关联,而会话Bean代表与客户端的短暂交互,不直接与持久数据关联。
5. 消息驱动Bean(Message-Driven Beans)的主要功能是什么?消息驱动Bean是一种特殊的EJB,用于处理来自消息队列的消息。
它们是无状态的,并且可以异步处理消息,这使得它们非常适合处理大量消息。
6. EJB容器提供哪些服务?EJB容器提供多种服务,包括事务管理、安全性、持久性、生命周期管理、并发控制和资源池。
7. EJB的事务属性有哪些?EJB的事务属性包括:Required、RequiresNew、Mandatory、Never、NotSupported和Supports。
8. 如何在EJB中处理异常?在EJB中,可以通过声明异常(declarative exception handling)和编程异常(programmatic exception handling)两种方式来处理异常。
J2EE34道复习题答案
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应用框架设计与项目开发》试题(附答案)
《J2EE应用框架设计与项目开发-2014》试题第一章J2EE体系结构一、单项选择题(每题2分,其中只有一个选择项为正确,多选、不选或错选该题均不得分)1、下列关于J2EE的说法,正确的是()A.是一套使用java进行企业级web应用开发的事实上的工业标准。
B.J2EE不是一种平台规范。
C.J2EE平台提供了多层分布式的应用模型,不能重新利用组件的能力。
D.J2EE不一定要基于J2SE。
答案:A2、J2ME是指()A.java to more enterpriseB.java 2 mobile editionC.java 2 micro editionD.java 2 mini edition答案:C3、J2EE的三层结构包括表示层、中间层、()A.服务层B.会话层C.保存层D.数据层答案:D4、在J2EE三层结构中,中间层与MVC设计模式中的()模块相对应。
A.视图B.控制器C.模型D.以上都不对答案:B5、JavaEE服务器与容器的关系是()A.服务器是javaEE容器基础,容器是它的一部分B.javaEE容器是服务器的基础,服务器是它的一部分C.二者没有什么关系D.服务器和容器指的是同样一个东西答案:A6、下列不属于J2EE标准服务的是()A.邮件服务B.安全服务C.短信服务D.消息服务答案:C7、下列不属于J2EE组成结构中的各元素的是()A.J2EE应用程序组件B.J2EE容器C.J2EE资源适配器D.J2EE磁盘答案:D8、下列那个不属于java技术框架SSH里面的()A.StrutsB.HiveC.SpringD.Hibernate答案:B二、多项选择题(其中有两个或两个以选择项为正确,不选、错选或多选均得0分,漏选则按选对率计分,每题3分。
)1、通常的瘦客户端多层次应用程序难于编写,是因为要设计多行复杂代码()A.用于事务处理B.用于状态管理C.用于多线程D.用于资源池E.用于其他的复杂的底层设计答案:ABCDE2、下列哪些是J2EE的标准服务:()A.邮件服务B.消息服务C.安全服务D.连接器提供的服务E.硬件检测服务答案:ABCD3、J2EE必须支持的应用组件有:()A.客户端应用程序B.代码编译器C.AppletsD.Servlets、JSP页面、JSF应用程序、过滤器、WEB事件监听器E.企业javabean组件答案:ACDE4、下列属于web服务器的是:()A.IISB.WeblogicC.ApacheD.TomcatE.Websphere答案:ACD三、判断题(每题1.5分)1、JAVA是由微软公司推出的。
J2EE笔试题目及答案
J2EE笔试题目及答案1、heap和stack有什么区别?答:栈是一种线形集合,其添加和删除元素的操作应在同一段完成。
栈按照后进先出的方式进行处理。
堆是栈的一个组成元素2、Java中的异常处理机制的简单原理和应用答:当JAVA程序违反了JAVA的语义规则时,JAVA虚拟机就会将发生的错误表示为一个异常。
违反语义规则包括2种情况。
一种是JAVA类库内置的语义检查。
例如数组下标越界,会引发IndexOutOfBoundsException;访问null的对象时会引发 NullPointerException。
另一种情况就是JAVA允许程序员扩展这种语义检查,程序员可以创建自己的异常,并自由选择在何时用 throw关键字引发异常。
所有的异常都是ng.Thowable的子类。
3、垃圾回收的优点和原理。
并考虑2种回收机制答:Java语言中一个显著的特点就是引入了垃圾回收机制,使c++程序员最头疼的内存管理的问题迎刃而解,它使得Java程序员在编写程序的时候不再需要考虑内存管理。
由于有个垃圾回收机制,Java中的对象不再有"作用域"的概念,只有对象的引用才有"作用域"。
垃圾回收可以有效的防止内存泄露,有效的使用可以使用的内存。
垃圾回收器通常是作为一个单独的低级别的线程运行,不可预知的情况下对内存堆中已经死亡的或者长时间没有使用的对象进行清楚和回收,程序员不能实时的调用垃圾回收器对某个对象或所有对象进行垃圾回收。
回收机制有分代复制垃圾回收和标记垃圾回收,增量垃圾回收。
4、你所知道的集合类都有哪些?主要方法?答:最常用的集合类是 List 和 Map。
List 的具体实现包括 ArrayList 和 Vector,它们是可变大小的列表,比较适合构建、存储和操作任何类型对象的元素列表。
List 适用于按数值索引访问元素的情形。
Map 提供了一个更通用的元素存储方法。
Map 集合类用于存储元素对(称作"键"和"值"),其中每个键映射到一个值。
J2EE期末复习(含答案)
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开发基础(习题卷9)
J2EE开发基础(习题卷9)第1部分:单项选择题,共59题,每题只有一个正确答案,多选或少选均不得分。
1.[单选题]下列操作中,不属于Applet安全限制的是( )。
A)与同一个页面中的Applet通信B)加载本地库C)运行本地可执行程序D)读写本地文件系统答案:A解析:2.[单选题]Mapper.xml中支持编写查询SQL语句的标签是什么()[题]A)InsertB)SelectC)UpdateD)Delete答案:B解析:3.[单选题]page 对象属于( )类对象A)作用域通信对象B)错误C)ServletD)输入输出答案:A解析:4.[单选题]以下哪个属性是<bean>标签的名称标识?A)idB)nameC)classD)factory-bean答案:B解析:5.[单选题]实现对象遍历标签是[题]A)foreachB)ifC)chooseD)trim答案:A解析:6.[单选题]下面关于存储过程与自定义函数说法不正确的是?A)函数只会返回一个值,不允许返回一个结果集。
B)存储过程使用CREATE PROCEDURE关键字D)存储过程使用SELECT语句调用答案:D解析:7.[单选题]Spring中Dao层使用的注解是A)@ServiceB)@ResourceC)@ControllerD)@Repository答案:D解析:8.[单选题]下列关于ServletContext的说法中,错误的是( )。
A)ServletContext对象来保存当前Web应中的所有信息B)在个Web应中可以有多个ServletContext对象。
C)ServletContext接封装了获取当前Web应中资源件的法。
D)ServletContext对象中保存的属性可以被Web应中的所有Servlet访问。
答案:B解析:9.[单选题]定义抽象类时所用到的关键字是( )。
A)publicB)abstractC)finalD)protected答案:B解析:10.[单选题]下面类型中,不属于请求处理方法参数类型的是()。
J2EE架构与应用开发测试题目(附答案)
复查测验:测试题目一问题1A. java to more enterpriseB. java 2 mobile editionC. java 2 micro editionD. java 2 mini edition正确答案: C. java 2 micro edition问题2 servletA. init()B. server()C. service()D. destroy()正确答案: C. service()问题3 WEB-INFA. HTMLB. JSPEC. 图片D. web.xml正确答案: D. web.xml问题4 Web/EJB/ApplicationA. JARB. EARC. WARD. ZIP正确答案: B. EAR问题5 下列哪个不是JSP可以直接使用的内置变量: D. serviceA. requestB. sessionC. exceptionD. service正确答案: D. service问题6 下面哪个不是EJBA. JbossB. WebLogicC. WebSphereD. Apache正确答案: D. Apache问题7 web.xmlA. ServletB. JSPC. JavaBeanD. HTML正确答案: A. Servlet问题8 关于JavaScriptA. 一种Java语言B. 运行在客户机上C. 运行在服务器上D. 被编译后执行正确答案: B. 运行在客户机上问题9 四类JDBCA. JDBC-ODBC驱动桥B. JDBC本地驱动C. JDBC网络驱动D. 纯java驱动正确答案: D. 纯java驱动问题10 下面关于JSP说法错误的是 D. 不能给JSP页面添加过滤器。
A. 访问JSP页面时,容器首先将JSP页面翻译成一个Java文件B. 不是每一个JSP页面都能够访问exception对象C. 一个HTML文件重新命名为JSP文件,这个JSP文件也能够被正确访问D. 不能给JSP页面添加过滤器正确答案: D. 不能给JSP页面添加过滤器问题11 War中不能包含的是 D. EJB。
J2EE开发基础(习题卷30)
J2EE开发基础(习题卷30)第1部分:单项选择题,共57题,每题只有一个正确答案,多选或少选均不得分。
1.[单选题]( )提供了客户和服务器之间及在不同服务器程序构件之间的通信机制,包括Internet和Intranet 中的不同的通信协议。
A)JNDIB)JMSC)J2EE 的通信技术D)J2EE 的安全技术答案:B解析:2.[单选题]下面的说法错误的是: () ( )A)Jsp 可以处理动态内容和静态内容B)在Jsp最终会编译成字节码后执行C)在jsp 中可以使用脚本控制Html 的标签生成D)Jsp 中不能使用//注释Java脚本中的代码答案:D解析:3.[单选题]关于< typeHandlers>元素说法错误的是()A)< typeHandler>元素就是用来在配置文件中注册自定义的类型处理器的,它的使用方式有两种B)通过< typeHandlers>元素的子元素< typeHandler>就可以配置单个类型处理器C)通过< typeHandlers>元素的子元素< package>可以配置包下的所有类型处理器D)< typeHandlers>元素的子元素< package>的handler属性用于指定类型处理器所在的包名,系统会在启动时自动的扫描com.itheima.type包下所有的文件,并把它们作为类型处理器答案:D解析:< package>的name属性用于指定类型处理器所在的包名4.[单选题]以下哪项不属于Mybatis全局配置文件中的标签[题]A)propertiesB)dataC)pluginsD)typealiases答案:B解析:5.[单选题]设置业务方法的入参为____类型,Spring MVC会将隐含对象的引用传递给入参?A)MapB)ModelAndViewC)ModelD)String答案:A解析:6.[单选题]下列哪个类是抽象类A)ServletConfigB)HttpServletC)CookieD)HttpServletRequest答案:B解析:7.[单选题]下列有关Spring框架的描述,错误的是()A)Spring是Java Web开发框架B)Spring是持久层框架C)Spring是轻量级框架D)Spring是开源框架答案:B解析:8.[单选题]对于转发与重定向的描述错误的语句是( )A)重定向是在客户端发生作用,通过请求重新的地址实现页面转向B)使用转发时由于是服务器内部控制权的转移,因而地址栏中的URL没有变化C)使用重定向时可以在地址栏中看到转向后的URLD)转发与重定向都可以实现在页面跳转,因而没有区别答案:D解析:9.[单选题]对下面Spring 声明式事务的配置含义的说明错误的是( )。
J2EE考试复习试题及答案
一、填空:1.Struts 2框架由___Struts1_____和___WebWork______框架发展而来。
2.Struts 2以___WebWork____为核心,采用___拦截器____的机制来处理用户的请求。
3.构建Struts 2应用的最基础的几个类库是_的common-logging-1.0.4.jar、freemarker-2.3.8.jar、struts2-core-2.0.11.1.jar、xwork-2.0.4.jar和ognl-2.6.11.jar4.Struts 2中的控制器类是一个普通的___POJO类________。
5.如果要在JSP页面中使用Struts 2提供的标签库,首先必须在页面中使用taglib编译指令导入标签库,其中taglib编译指令为_<%@ taglib url=”/struts-tags” prefix=”s” %>__________。
6.在Struts 2表单标签库中,表单标签为___<s:form></s:form>________。
7.ActionSupport类实现了__Action_________接口和__Validatable_____等接口。
8.通过控制器类中的_addFiledError______方法来输出校验错误信息。
9. Struts 2以_DispatcherFilter____为核心控制器,它的初始化方法为__init()________。
10.Hibernate配置数据库连接的四种属性名是connection.url 、connection.driver_class 、ername 、connection.password 。
11. 在Hibernate XML影射文件中描述主键生成机制,其属性描述了主键的生成策略,至少写出三种策略名assigned 、hilo、seqhilo、sequence、native、uuid.string、foreign、uuid.hex 、identity 、increment 。
J2EE开发基础(习题卷3)
J2EE开发基础(习题卷3)第1部分:单项选择题,共59题,每题只有一个正确答案,多选或少选均不得分。
1.[单选题]下面哪一项不是JDBC的工作任务?A)与数据库建立连接B)操作数据库,处理数据库返回的结果C)在网页中生成表格D)向数据库管理系统发送SQL语句答案:C解析:2.[单选题]视图解析器配置文件,横线处<beanclass="org.springframework.web.servlet.view.InternalResourceViewResolver"> </property></property></bean>应该填写什么?A)*/B)prefixC)srefixD)答案:B解析:3.[单选题]test.jsp 文件如下:<%buffer.append("ABC");%>Buffer is <%=buffer%>试图运行时,将发生()A)编译期错误B)编译Servlet 源码时发生错误C)运行Servlet 时发生错误D)运行后,浏览器上显示: buffer isABC答案:A解析:4.[单选题]下面关于Java 语言特点的描述中,错误的是( )。
A)Java是纯面向对象编程语言,支持单继承和多继承。
B)Java支持分布式的网络应用,可透明地访问网络上的其他对象。
C)Java支持多线程D)Java程序与平台无关、可移植性好。
答案:A解析:5.[单选题]在Spring 配置文件中定义了“ bookServiceTarget ”和通知“ logAdvice ”, 然后定义代理类“ bookService ”, 则以下说法错误的是( )。
( 选择一项)<beans><bean id="bookServiceTarget" class="com.accp.aop.BookServiceImpl"/><bean id="logAdvice" class="com.accp.aop.LogAdvice"/><bean id="bookService"class="org.springframework.aop.framwork.ProxyFactoryBean"><property name="proxyInterfaces"><value>com.accp.aop6BookService</value></property><list><value>com.accp.aop6BookService</value></list></property><property name="target" ref="bookServiceTarget"/></bean></beans>A)通过直接访问bookServiceTarget , logAdvice 中的代码将会被执行B)为了实现前置通知, LogAdvice 需实现MethodBeforeAdvice 接口C)interceporName 指定织入的通知列表,其中<value> 节点可以有多个D)<property name="proxyInterfaces"><value>com.accp.aop.BookService</value></property>可以写成<property name="proxyInterfaces"value="com.acp.aop.BookService">答案:D解析:6.[单选题]@Aspect注解的作用是?A)作用是把当前类标识为一个切面B)标识一个前置增强方法C)标识一个后置增强类D)标识一个动态代理类答案:A解析:7.[单选题]messageorg.bob.taglib.MessageTagemptynametrue对这段配置描述正确的是A)定义了一个message 标签,有一个属性叫nameB)配置了一个名字为message 的标签,该名称对应到org.bob.taglib.MessageTag 类,并且标签不允许有主体内容,使用标签时有一个必须得属性为nameC)声明了一个名字为message 的标签,该标签对应到MessageTag 类,并且标签没有主体内容D)标签配置错误,主体不能为空答案:B解析:8.[单选题]下列选项中不属于服务器端动态网页技术的是( )A)ASPB)JSPC)JavaScriptD)PHP答案:C解析:9.[单选题]阅读以下PL/SQL 程序:1 begin2 for idx in 1..10 loop3 dbms_output.put_line( ‘Index= ’||idx) ;4 End loop5 end以下说法正确的是( )。
J2EE工程师面试试题精选(附答案)
J2EE工程师面试试题精选(附答案)一、基础问答1.下面哪些类可以被继承?ng.Thread ()ber ()ng.Double ()ng.Math ()ng.Void ()ng.Class ()ng.ClassLoader ()2.抽象类和接口的区别3.Hashtable的原理,并说出HashMap与Hashtable的区别4.forward和redirect的区别5.什么是Web容器?6.解释下面关于J2EE的名词(1)JNDI(2)JMS(3)JTA(4)JAF(5)RMI7.EJB是基于哪些技术实现的?并说出SessionBean和EntityBean的区别,StatefulBean和StatelessBean的区别.8.某ML的解析方法9.什么是Web Service?10.多线程有几种实现方法,都是什么?同步有几种实现方法,都是什么?11.JSP中动态与静态的区别?二、Java编程与程序运行结果1.Java编程,打印昨天的当前时刻2.文件读写,实现一个计数器答案:第一题:1.答:T T F F F F T2.答:(1)接口可以被多重implements,抽象类只能被单一e某tends(2)接口只有定义,抽象类可以有定义和实现(3)接口的字段定义默认为:public static final, 抽象类字段默认是”friendly”(本包可见)3.答:HashTable的原理:通过节点的关键码确定节点的存储位置,即给定节点的关键码k,通过一定的函数关系H(散列函数),得到函数值H(k),将此值解释为该节点的存储地址.HashMap 与Hashtable很相似,但HashMap 是非同步(unsynchronizded)和可以以null为关键码的.4.答:forward: an internal transfer in servletredirect: 重定向,有2次request,第2次request将丢失第一次的attributs/parameters等5.答:实现J2EE规范中web协议的应用.该协议定义了web程序的运行时环境,包括:并发性,安全性,生命周期管理等等.6.答:(1)JNDI:Java Naming & Directory Interface,JAVA命名目录服务.主要提供的功能是:提供一个目录系统,让其它各地的应用程序在其上面留下自己的索引,从而满足快速查找和定位分布式应用程序的'功能.(2)JMS:Java Message Service,JAVA消息服务.主要实现各个应用程序之间的通讯.包括点对点和广播.(3)JTA:Java Transaction API,JAVA事务服务.提供各种分布式事务服务.应用程序只需调用其提供的接口即可.(4)JAF: Java Action FrameWork,JAVA安全认证框架.提供一些安全控制方面的框架.让开发者通过各种部署和自定义实现自己的个性安全控制策略.(5)RMI:Remote Method Interface,远程方法调用7.答:EJB包括Session Bean、Entity Bean、Message Driven Bean,基于JNDI、RMI、JAT等技术实现.SessionBean在J2EE应用程序中被用来完成一些服务器端的业务操作,例如访问数据库、调用其他EJB组件.EntityBean被用来代表应用系统中用到的数据.对于客户机,SessionBean是一种非持久性对象,它实现某些在服务器上运行的业务逻辑;EntityBean是一种持久性对象,它代表一个存储在持久性存储器中的实体的对象视图,或是一个由现有企业应用程序实现的实体.Session Bean 还可以再细分为 Stateful Session Bean 与 Stateless Session Bean .这两种的 Session Bean都可以将系统逻辑放在 method之中执行,不同的是 Stateful Session Bean 可以记录呼叫者的状态,因此通常来说,一个使用者会有一个相对应的 Stateful Session Bean 的实体.Stateless Session Bean 虽然也是逻辑组件,但是他却不负责记录使用者状态,也就是说当使用者呼叫 Stateless Session Bean 的时候,EJB Container 并不会找寻特定的 Stateless Session Bean 的实体来执行这个 method.换言之,很可能数个使用者在执行某个 Stateless Session Bean 的 methods 时,会是同一个Bean 的 Instance 在执行.从内存方面来看, Stateful Session Bean 与Stateless Session Bean 比较, Stateful Session Bean 会消耗 J2EE Server 较多的内存,然而 Stateful Session Bean 的优势却在于他可以维持使用者的状态.8.答:Sa某,DOM,JDOM9.答:Web Service就是为了使原来各孤立的站点之间的信息能够相互通信、共享而提出的一种接口。
J2EE企业级架构试题+答案
一、选择题1、以下哪些框架属于ORMapping框架技术(C)(常见的ORM框架包括Hibernate、iBATIS、TopLink、Castor JDO、Apache OJB等)a)Struts b)Spring c)Hibernate d)MyBATIS2、下面针对Hibernate框架描述错误的是(D)a)Hibernate框架是一个ORMapping框架,可以完成对象与表之间的映射关系b)Hibernate的映射关系只能由XML来完成c)Hibernate框架中用来作为数据库连接操作的核心对象是Sessiond)Hibernate中使用HQL语句可以完成针对数据的添加,修改,删除和查询功能3、以下针对Struts2框架描述错误的是(C)a)Struts2框架中接收参数是在Action类中完成的。
b)编写Struts2的Action类必须继承ActionSupport类c)Struts2的分发操作只能使用!来完成d)Struts2框架存在重大漏洞,在2.3以后的版本中才被修复4、以下框架或技术中与Struts2功能类似的框架是(D)a)Hibernate b)JDBC c)JSP/Servlet d)Spring MVC5、以下针对Spring框架描述正确的是(D)a)Spring框架是一个单独使用的框架,不需要结合其他框架技术来应用b)SpringMVC是前端框架,功能类似Struts框架c)SpringMVC需要编写xml配置文件来对Action类进行配置,自己编写的Action类必须继承ActionSupport类d)Spring框架结合Hibernate开发时,需要保留hibernate.cfg.xml配置文件,并在里面配置数据库连接相关的配置,由Hibernate来管理连接的关闭和事务处理。
6、以下关于IoC理解正确的是(C)a)控制反转b)一定要用接口c)通过<ref>来设置注入d)通过<value>来设置注入7、对Hibernate的支持主要用到了Spring的哪个模块?(C)a)Spring Core b)Spring IoC c)Spring ORMapping d)Spring Web MVC8、以下哪个不属于Hibernate中Session的方法?(D)a)save() b)delete() c)update() d)open()二、简答题1、列出Hibernate中常用的主键生成方式,并说明他们的作用(至少4种)1)assigned:通过程序添加。
J2EE试题附答案(8)
J2EE固定练习试卷1. 下面( )是正确的?A.<% String myString=request.getServerName() %>B.<%= "Hello" %>C.<%! String myString="Hello" %>D.<%= out.print("Hello") %>★标准答案:B2. 一个Java RMI应用,需要定位服务器myServer端口99上的myRemoteTest 远程对象,下面哪个RMI URL是正确的?A.rmi://99: myServer /myRemoteTestB.myServer:99/myRemoteTestC.rmi://myServer:99/myRemoteTestD.rmi:/myServer:99/myRemoteTest★标准答案:C3. <html><body><jsp:useBean id="address" class="Address Bean" /><jsp:setPropertyname="address" property="city" /><jsp:get Property name="address" property="city" /></body></html>如果用下面的URL访问,页面会输出什么结果?( )http://localhost:8080/ address.jsp?city=ChicagoA.Los AngelesB.ChicagoC.MiamiD.以上都不对★标准答案:B4. 考察以下:陈述A: RMI中, 存根(stub)是表示远程对象的客户端的代理。
.陈述B: RMI系统结构中,传输层负责建立新的连接和管理现有的连接。
一些J2EE习题及答案
alert
confirm
prompt
D
从HTTP请求中,获得请求参数,应该调用()。
request对象的getAttribute()方法
request对象的getParameter()方法
session对象的getAttribute()方法
session对象的getParameter()方法
表示访问的web应用的主机名是localhost,服务端口是8080端口
URL地址中包含了两个参数user与password
使用HTTP协议进行访问
使用POST请求方法
D
下列哪个状态码表示“Not Found无法找到指定位置的资源"?( )
100
201
400
404
D
如果没有指定Cookie的时效,那么默认的时效是( )
参数不能指定数据类型
没有指定返回类型
没有指定访问
Function不是方法声明的关键字
A
Servlet通过什么接口可以实现请求转发机制()。
RequestDispatcher接口
HttpServletRequest接口
HttpServletResponse接口
Filter接口
A
在javascipt中,window对象的哪个方法可以接受用户输入的数据?()
change——选择字段时触发的事件
D
Servlet中,HttpServletResponse的()方法用来把一个Http请求重定向到另外的URL。
sendURL()
redirectURL()
sendRedirect()
redirectResponse()
C
j2ee框架期末考试题及答案
j2ee框架期末考试题及答案一、单项选择题(每题2分,共20分)1. J2EE的全称是什么?A. Java 2 Platform, Enterprise EditionB. Java 2 Platform, Standard EditionC. Java 2 Platform, Micro EditionD. Java 2 Platform, Mobile Edition答案:A2. 在J2EE中,以下哪个组件是用于表示业务逻辑的?A. ServletB. JSPC. EJBD. JDBC答案:C3. J2EE中,以下哪个是用于构建Web应用的核心技术?A. EJBB. JSPC. JDBCD. RMI答案:B4. 在J2EE中,以下哪个是用于数据库连接的API?A. JNDIB. JDBCC. RMID. JMS答案:B5. J2EE中,以下哪个是用于消息传递的API?A. JNDIC. JMSD. RMI答案:C6. 在J2EE中,以下哪个是用于查找和访问外部资源的API?A. JNDIB. JDBCC. JMSD. RMI答案:A7. J2EE中,以下哪个是用于创建Web服务的规范?A. EJBB. JSPC. JAX-WS答案:C8. 在J2EE中,以下哪个是用于事务管理的API?A. JTAB. JMSC. JDBCD. JNDI答案:A9. J2EE中,以下哪个是用于分布式对象访问的API?A. RMIB. JMSC. JDBCD. JNDI答案:A10. 在J2EE中,以下哪个是用于安全控制的API?A. JAASB. JMSC. JDBCD. JNDI答案:A二、多项选择题(每题3分,共15分)11. J2EE中,以下哪些组件可以作为Web组件?A. ServletB. EJBC. JSPD. JDBC答案:A, C12. 在J2EE中,以下哪些是企业级应用的组成部分?A. Web应用B. 企业信息系统C. 消息服务D. 数据库答案:A, B, C, D13. J2EE中,以下哪些是用于连接数据库的技术?A. JDBCB. JNDIC. EJBD. RMI答案:A, B14. 在J2EE中,以下哪些是用于分布式应用的技术?A. RMIB. JMSC. EJBD. JDBC答案:A, B, C15. J2EE中,以下哪些是用于事务控制的技术?A. JTAB. JMSC. EJBD. JDBC答案:A, C三、填空题(每题2分,共20分)16. J2EE的架构模型包括______层和______层。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
J2简答题1、简述J2的四层模型。
运行在客户端机器上的客户层组件;运行在J2服务器上的层组件;运行在J2服务器上的业务逻辑层组件;运行在服务器上的企业信息系统层软件2、什么是对象持久化?即把数据(如内存中的对象)保存到可永久保存的存储设备中(如磁盘)。
持久化的主要应用是将内存中的数据存储在关系型的数据库中,当然也可以存储在磁盘文件中、数据文件中等等。
3、简述一下,为什么我们使用它?( )是一种为了解决面向对象与关系型数据库存在的互不匹配的现象的技术。
简单说:是通过使用描述对象和数据库之间映射的元数据,将程序中的对象自动持久化到关系数据中。
本质上就是将数据从一种形式转换到另外一种形式。
原因:用它来架起对象和关系型数据库的桥梁,可解决对象层次的映射、对象关系的映射以及对象的持久化问题。
4、简述一下如何使用实现对象持久化的过程(可画图或用伪码描述)1:创建对象。
在这一步中主要为了进行配置文件的装载操作,读取所有的配置文件并进行解析、2: 创建对象。
通过创建好的对象可以创建一个对象的实例,同时是生成对象实例的工厂,他在整个应用中应该是,唯一的。
3:创建对象。
对象类似于数据库的连接对象,可以理解为与数据库建立的一个连接,但是他的功能要比中的对象丰富很多。
4:开始一个事务。
在中定义一个事务操作的开始,这是使用进行持久化操作必不可少的步骤5:进行持久化操作。
在这个步骤中可以读取或者保存对象。
6:结束事务。
在操作完成之后还要进行显式的结束事务的操作。
7:关闭。
类似于释放数据库的连接。
5、为什么要实现序列化?1、序列化以某种存储形式使自定义对象持久化2、序列化将对象转换为可传输方式从一个地方传递到另一个地方3、序列化使程序更具维护性6、比较一下中的()和()方法1、创建的会和绑定到当前线程,而不会。
2 、创建的线程会在事务回滚或事物提交后自动关闭,而必须手动关闭7、比较一下中的()和()方法,以及如何保证每次都是从数据库读取而不是在缓存中读?()和()方法均可以根据指定的实体类和从数据库读取记录,并返回与之对应的实体对象。
其区别在于:如果未能发现符合条件的记录,方法返回,而方法会抛出一个。
方法可返回实体的代理类实例,而方法永远直接返回实体类。
方法可以充分利用内部缓存和二级缓存中的现有数据,而方法则仅仅在内部缓存中进行数据查找,如没有发现对应数据,将越过二级缓存,直接调用完成数据读取。
8、接受用户参数输入,主要有哪几种方式?我们常用的是哪一种?1属性接收参数;2. (域模型)接收参数;3 接收参数。
常用第一种跟第二种9、在中实现一个有哪几种方式?最常用的是哪种?1.定义一个普通的类,类中只要有一个 ()方法且返回一个字符串即可。
2.定义一个类,实现接口,2这个包的3继承2这个类。
最常用的是第三种10、在中的常用的有四种类型1) 2) 3) 4)哪些是服务器跳转?哪些是客户端跳转?和是服务器端跳转,所以客户端只发起一次请求和是客户端跳转,所以客户端发起两次请求。
11、j2是技术还是平台还是框架?它主要包含哪些技术,列举并简单描述2到3个技术?J2本身是一个标准,一个为企业分布式应用的开发提供的标准平台。
J2也是一个框架,包括、、、、、等技术。
:是一种用于执行语句的,可以为多种关系数据库提供统一访问,它由一组用语言编写的类和接口组成。
协议调用远程对象上的方法。
它使用了序列化方式在客户端和服务器端传递数据。
是一种被使用的更底层的协议。
12、的各个部分都有哪些技术来实现?如何实现?是--的简写。
"" 代表的是应用的业务逻辑(通过,组件实现), "" 是应用的表示面(由页面产生),"" 是提供应用的处理过程控制(一般是一个),通过这种设计模型把应用逻辑,处理过程和显示逻辑分成不同的组件实现。
这些组件可以进行交互和重用。
13、什么是?是公司提供的一种标准的命名系统接口,提供统一的客户端,通过不同的访问提供者接口的实现,由管理者将映射为特定的命名服务和目录系统,使得应用程序可以和这些命名服务和目录服务之间进行交互。
14、举例并简单描述2到3种动态网页开发技术。
1、,是英文超文本预处理语言的缩写。
是一种内嵌式的语言,是一种在服务器端执行的嵌入文档的脚本语言,语言的风格有类似于C语言,被广泛地运用。
2、,它是微软公司开发的代替脚本程序的一种应用,它可以与数据库和其它程序进行交互,是一种简单、方便的编程工具。
的网页文件的格式是,现在常用于各种动态网站中。
15、简单描述浏览器输入访问资源的过程(也就是工作的时序图)(提示,解释地址→用端口号和地址访问服务器→访问资源)。
1.浏览器会将请求打包成请求数据包,发送给服务器,2.服务器中的引擎解析请求并封装为一个对象(包含了请求数据),同时创建个对象。
3.调用的()方法,并将,对象作为参数传递给实例4.可以从对象中获得请求数据,并处理,当然,也可能要访问数据库。
然后将处理之后的结果放到中。
5.引擎从中取数据,并将数据打包成数据包发送给浏览器。
16、开发服务器程序三种方法。
开发有三种方法:a,实现接口; b,继承; c,继承17、通过去开发,需要重写和方法。
这是常用的方式,请简述与方法的区别。
(1)是从服务器上获取数据,是向服务器传送数据。
在客户端,方式在通过提交数据,数据在中可以看到;方式,数据放置在内提交。
(2)对于方式,服务器端用获取变量的值,对于方式,服务器端用获取提交的数据。
(3)方式提交的数据最多只能有1024字节,而则没有此限制。
(4)安全性问题。
使用的时候,参数会显示在地址栏上,而不会。
所以,还是使用为好。
18、简述返回包中的状态码200,302,404,500的意义。
[200] 请求已成功,请求所希望的响应头或数据体将随此响应返回。
[302] 请求的资源现在临时从不同的响应请求。
[404] 请求失败,请求所希望得到的资源未被在伺服器上发现。
[500] 伺服器遇到了一个未曾预料的状况,导致了它无法完成对请求的处理.19、简述请求重定向()和请求转发()的区别。
1、()只能将请求转发给同一个应用中的组件,而()方法不仅可以重定向到当前应用程序中的其他资源,还可以重定向到其他站点的资源。
2、()方法重定向的访问过程结束后,浏览器地址栏中显示的会发生改变,由初始的地址变成重定向的目标;而调用()方法的请求转发过程结束后,浏览器地址栏保持初始的地址不变。
3、()方法的调用者与被调用者之间共享相同的对象和对象;而()方法调用者和被调用者使用各自的对象和对象,它们属于两个独立的请求和响应过程。
20、拒绝连接、服务器崩溃的原因?最少写三个?1. 没有打开2. 网络连接可能出了问题3. 连接配置错了4. 驱动的,是否都写对了5. 下加入相应驱动,数据连接代码是否有误6. 数据库配置可能有问题7. 当前联接太多了,服务器都有访问人数限制的8. 服务器的相应端口没有开,即它不提供相应的服务9 有哪些缓存,分别怎么使用?10 你对的了解到了一个什么样的程度?11 写出一个语句体现中一对多的关系21、()和()的区别?()方法操作的对象必须是持久化了的对象。
也就是说,如果此对象在数据库中不存在的话,就不能使用()方法。
()方法操作的对象既可以使持久化了的,也可以使没有持久化的对象。
如果是持久化了的对象调用()则会更新数据库中的对象;如果是未持久化的对象使用此方法,则到数据库中。
22、的三种状态之间如何转换?当对象由瞬时状态()一()时,就变成了持久化状态。
当我们在里存储对象的时候,实际是在的里存了一份,也就是它的缓存里放了一份,然后,又到数据库里存了一份,在缓存里这一份叫持久对象()。
一 ()了,它的缓存也都关闭了,整个也就失效了,这个时候,这个对象变成了游离状态(),但数据库中还是存在的。
当游离状态()()时,又变为了持久状态()。
当持久状态()()时,又变为了瞬时状态(),此时,数据库中没有与之对应的记录。
23、工厂模式?工厂模式主要是为创建对象提供了接口。
工厂模式按照《与模式》中的提法分为三类:1. 简单工厂模式( )2. 工厂方法模式( )3. 抽象工厂模式( ) 这三种模式从上到下逐步抽象,并且更具一般性。
还有一种分类法,就是将简单工厂模式看为工厂方法模式的一种特例,两个归为一类。
下面是使用工厂模式的两种情况:1.在编码时不能预见需要创建哪种类的实例。
2.系统不应依赖于产品类实例如何被创建、组合和表达的细节24、抽象类和接口的区别?接口是公开的,里面不能有私有的方法或变量,是用于让别人使用的,而抽象类是可以有私有方法或私有变量的,另外,实现接口的一定要实现接口里定义的所有方法,而实现抽象类可以有选择地重写需要用到的方法,一般的应用里,最顶级的是接口,然后是抽象类实现接口,最后才到具体类实现。
还有,接口可以实现多重继承,而一个类只能继承一个超类,但可以通过继承多个接口实现多重继承,接口还有标识(里面没有任何方法,如接口)和数据共享(里面的变量全是常量)的作用.25、和的区别?是服务器请求资源,服务器直接访问目标地址的,把那个的响应内容读取过来,然后把这些内容再发给浏览器,浏览器根本不知道服务器发送的内容是从哪儿来的,所以它的地址栏中还是原来的地址。
就是服务端根据逻辑,发送一个状态码,告诉浏览器重新去请求那个地址,一般来说浏览器会用刚才请求的所有参数重新请求,所以参数都可以获取。
26、持久化对象的三种状态,代表含义?瞬时态:简单的说就是你在程序里面一个对象,还没有和关联持久态:对象和有了关联,对象处于框架管理中游离态:在持久态的情况下,对象和失去了关联,比如()或() 后,即游离态,但数据已经存储到了数据库27、页面之间的值传递?1:可以分成多个参数对的方式用传递。
2:可以用特定的字符分隔后组成一个字符串,再用一个参数对的方式传递。
3:如果是第三信息的话,可以用在服务器端的方式传递,一般不用这种方式。
因为占服务器资源。
4:也可以用方式传递。
5:当然还可以用其它的不常的方式传递。
28、框架的数据验证可分为几种类型?表单验证(由处理):如果用户没有在表单中输入姓名,就提交表单,将生成表单验证错误业务逻辑验证(由处理):如果用户在表单中输入的姓名为“”,按照本应用的业务规则,不允许向“”打招呼,因此将生成业务逻辑错误。
29、写一个模式的例子?{= ();(){}(){;}}30、谈谈你的理解?是一种设计模式,它强制的将应用程序的输入、处理、和输出分开。
使用了的应用程序被分为3个核心部件:试图()、模型()、控制器()。
它们各司其职,既分工明确又相互合作。
首先视图接受用户输入请求,然后将请求传递给控制器,控制器再调用某个模型来处理用户的请求,在控制器的控制下,再将处理后的结果交给某个视图进行格式化输出给用户.这是经典的设计执行的基本流程。