当前位置:文档之家› JavaEE简答题

JavaEE简答题

JavaEE简答题
JavaEE简答题

JavaEE简答题修改版(30分,6题*5分)

(一)第一章概述

1.三层体系结构的优点有哪些?P2

①安全性高;

②易维护;

③快速响应;

④系统扩展灵活。

2.两层体系结构的缺点有哪些?p2-3

①安全性低;

②部署困难;

③耗费系统资源。

3.简述Java EE的“组件-容器”编程思想。(P5,有两点,与填空题第1题互斥)

①JavaEE应用的基本单元是JavaEE组件,所有的javaEE组件都运行在特定的环境中。

②组件的运行环境被称为容器。

4.Java EE体系结构的优点?p11,4点

①独立于硬件配置和操作系统;

②坚持面向对象的设计原则;

③灵活性、可移植性和互操作性;

④轻松的企业信息系统集成。

(二)第三章Servlet

5.Servlet的基本工作流程?p21:6点

①客户端将请求发送到服务器;

②服务器上的Web容器实例化Servlet,并为Servlet创建线程;

③Web容器将请求信息发送到Servlet;

④Servlet创建一个响应,并将其返回到Web容器;

⑤Web容器将响应返回客户端;

⑥服务器关闭或Servlet空闲时间超过一定限度时,调用dertory()方法退出。

6.在创建Web应用程序时,通过Servlet上下文可以实现哪些功能?p61,4点

①访问Web应用程序资源;

②在Servlet上下文属性中保存Web应用程序信息;

③获取应用初始化参数信息;

④提供日志支持。

7.HttpServletResponse的sendRedirect方法与RequestDispatcher的forward方法有什么区

别?p68:3点

①从操作本质上,RequestDispatcher.forward()是容器控制权的转向,在客户端浏览器的地址栏中不会显示出转向后的地址,而sendRedirect()则是完全的跳转,浏览器将会得到跳转的地址,并重新发送请求连接。

②从性能上,前者仍是在同一次请求处理过程中,后者是结束第一次请求,由浏览器发起一次新的请求。因此前者更高效。

③从跳转的范围上,HttpServletResponse()能够跳转到其他服务器上的资源,而RequestDispatcher.forward()只能转向Web应用内部的资源。

8.Filter的主要用途是什么?p69: 3点

①访问特定资源时的身份验证;

②访问资源的记录跟踪;

③访问资源的转换。

(三)第四章JSP

9.列举JSP的5个内置对象,并做简要说明。

答:request、response、out、session、application、config、pageContext、page、exception (任选5个,并用一句话说明)

①request对象:代表来自客户端的请求,它封装了用户提交的信息;

②response对象:代表服务器对客户端的响应;

③out对象:代表向客户端发送数据的对象;

④application对象:代表运行在服务器上的Web应用程序,相当于Servlet上下文;

⑤exception对象:用来处理JSP文件在执行时所有发生的错误和异常。

10.与response.sendRedirect()实现重定位有何不同?p114

response.sendRedirect()其实是向浏览器发送一个特殊的Header,然后由浏览器来做转向,转到指定的页面,在浏览器上的地址栏上可以看到地址的变化;

则不同,它是直接在服务器端执行重定位的,浏览器并不知道。

11.简述JSP内置对象的作用范围。P122

①page。Page范围内的对象仅在JSP页面范围内有效。

②request。Request范围的JSP内置对象可以在Request范围内的若干个页面内有效。

③session。Session范围内的JSP内置对象可以跨越若干个Requset范围有效。

④application。Application范围内的JSP内置对象可以跨越几个Session范围有效。

(四)第五章Java Bean

12.什么样的Java类是一个JavaBean?p129:3点

①对于数据类型“protype”的每个可读属性,Bean必须有下面签名的一个方法:

public proptype getProperty(){};

②对于数据类型“protype”的每个可写属性,Bean必须有下面签名的一个方法:

public setProperty(protype x){};

③定义一个不带任何参数的构造函数。

13.JSP如何与JavaBean结合?二者如何传递消息?(与填空题28题同一知识点)

答:JSP可以使用三个标记与JavaBean 进行结合,还可以使用表达式语言访问JavaBean的属性。

JSP可以使用脚本、标记、表达式访问JavaBean的属性,还可以通过脚本、标记、request 对象的参数设置JavaBean的属性。

14.与response.sendRedirect()实现重定位有何不同?p114页

response.sendRedirect()其实是向浏览器发送一个特殊的Header,然后由浏览器来做转向,转到指定的页面,在浏览器上的地址栏上可以看到地址的变化;

则不同,它是直接在服务器端执行重定位的,浏览器并不知道。

(五)第六章JSF

15.什么是JSF?它有哪些优点?

答:JSF(Java Server Faces)是一种用于构建Java EE Web应用表现层的框架标准,提供了一种以组件为中心的事件驱动的用户界面构建方法。(2)

优点在于:(3分)

①JSF是Java EE规范推荐的表现层框架标准

②)JSF吸收了流行框架的标准

③便于与其他Java EE技术集成

16.描述Managed Bean的生命周期。P153(5点,每个1分)

答:①Application: @ApplicationScoped, 整个应用;

②Session:@SessionScoped,整个对话;

③View:@ViewScoped,整个视图;

④Request:@RequestScoped,整个请求;

⑤None:无注解,临时(与宿主Managed Bean生命周期一致)。

17.描述JSF的常规流程的6个阶段,并简要说明。

①恢复视图:对于每个请求,都会对应一个JSF视图。JSF框架的FaceServlet负责定位这一视图。

②应用请求值:获取每个组件的当前状态。

③处理校验:校验每个组件的当前状态是否合法。

④更新模型值:将UI组件和状态与业务逻辑组件Managed Bean的状态进行同步。

⑤调用应用:进行消息事件的处理。

⑥显示响应:a.绘制结果视图的组件树并输出到客户端;

b.将当前组件树的状态进行保存以便响应之后的请求。

18.简要说明JSF标记库?p161 表6-2(每个标记库:标记库名称、前缀和简要说明)

标记库名称前缀说明

Core f: 对组件进行属性设置和功能绑定

Html h: 生成HTML控件标记

Facelets ui:页面模板标记

Composite Components Composite:生成复合组件

19.JSF与JSP支持表达式语言的区别是什么?p165, 3点

①使用的分隔符不同;

②作用方向不同;

③隐式对象不同。

20.列举JSF对请求处理的6个阶段。P172

①恢复视图:对于每个请求,都会对应一个JSF视图。JSF框架的FaceServlet负责定位这一视图。

②应用请求值:获取每个组件的当前状态。

③处理校验:校验每个组件的当前状态是否合法。

④更新模型值:将UI组件和状态与业务逻辑组件Managed Bean的状态进行同步。

⑤调用应用:进行消息事件的处理。

⑥显示响应:a.绘制结果视图的组件书并输出到客户端;

B.将当前组件树的状态进行保存以便响应之后的请求。

21.列举JSF框架中Bean验证框架的5个内置注解。P204

①NotNull:所注解的元素不能为null;

②Null:所注解的元素必须为null;

③Future:所注解的元素必须是未来的日期;

④Last:所注解的元素必须是过去的日期;

⑤Size:所注解的元素必须位于给定的最小值和最大值之间。

22.JSF框架支持哪四种事件类型?P204, 4个要点即可

①Value Change事件;

②Action事件;

③Phase事件;

④System事件。

23.Ajax与传统的web工作模型有何区别?p220,两点

①传统的web工作模型实际上是一种请求-响应模型,是一种同步通信方式,即用户提交请求并等待服务器返回响应后的更新页面。

②Ajax是一种异步通信模式,Ajax采用客户端脚本与web服务器通信,客户端不需要等待客户端的响应,不必采用导致中断交互的完整页面刷新,就可以动态地更新web页面。

(六)第七章JDBC

24.画出JDBC访问数据库层次结构?p226 图7-6

25.简述JDBC工作原理。P226页,3句话

在基于JDBC的数据库访问模式下,数据库访问清晰地分为3层:

①最上层为应用层:JavaEE程序开发人员在程序开发过程中通过调用JDBC进行数据库访问。

②中间层为JDBC接口层,它为JavaEE程序访问各种不用的数据库提供一个统一的访问接口。

③最底层为JDBC驱动层,它由特定数据库厂商提供的JDBC驱动程序来实现与数据库的真正交互。

26.什么是数据源?什么是连接池?二者之间的关系?

答:数据源存储了所有建立数据库连接的信息。(1分)

连接池是JDBC为第三方应用服务器提供的一个由数据库厂家实现的管理标准接口,缓存一定数量的数据库链接资源对象。(2分)

所有连接池和数据源的实现信息都存储在JNDI中。连接池一定以数据源的形式提供服务。但是数据源并不依赖连接池。数据源保存的实例可以直接通过JDBC来访问数据库。

27.列举ResultSet的光标5个属性。P239

①TYPE_FORWORD_ONLY: 包含只进光标的结果集,只能调用next()方法向前遍历,不能回头查询。

②TYPE_SCROLL_INSENSITIVE: 结果集包含的光标可前后滚动。可以调用first()、next()、absolute()等方法对数据库进行操作。

③TYPE_SCROLL_SENSITIVE: 结果集包含的光标可前后滚动。可以调first()、next()、absolute()等方法对数据进行操作。

④CONCUR_READ_ONLY: 结果集中包含的数据为只读数据。

⑤CONCUR_UPDATABLE: 结果集中的数据可更新到数据库中。

(七)第8章JPA

28.描述命名查询与动态查询的区别?

①创建一个动态查询,使用方法EntityManager的createQuery(), 它有一个字符串参数,表示一个JPQL查询。而命名查询是静态查询,由嵌入到@NamedQuery 注解或等价XML描述中的元数据表示。

②与动态查询相比,命名查询执行效率更高。因为持久化提供器在应用程序启动时将JPQL字符串翻译为SQL,而不是在运行时进行转换。

29.论述Entity的状态和生命周期变化?p282-283

①New:已经创建了Entity的实例,但尚未与持久化上下文进行关联,更未实现与数据库中的信息的映射。

②Managed:Entity 已经与持久化上下文进行关联,且实现与数据库中的信息映射。

③Detached:Entity 实现数据库中的信息映射,但不再与持久化上下文进行关联。

④Remove:Entity 对应的数据库中的数据已被删除。它们之间的变化关系如图所示:

30.简述JPA中提供的三种不同的策略实现继承映射?p273(与填空题)

①Single-table 策略:继承映射中的默认策略,将父类及子类中新添加的属性全部映射到一张数据库表中,另外又在表中增加一个字段用来保存对象的类型信息。

②Joined-subclass 策略:继承关系中的每一个Entity类,数据库中都有一个单独的表与他对应。子Entity对应的表中不含有从根Entity继承而来的属性,它们之间通过共享主键的方式进行关联

③Table-per-concrete-class 策略:将继承关系中的每一个Entity映射到数据库中的一个单独的表中,子Entity对应的表中含有从根Entity继承而来的属性。

31.简述JPA主键自动生成的四种策略?P261(与填空题55题是同一知识点)

①Table策略。JPA实现使用关系型数据库中的一个表来生成主键。可移植性好。

②Sequence策略:一些数据库提供一种内置的称为“序列”的机制生成主键。

③Identity策略:用一个Identity列(自动增长列)来生成主键。④Auto 策略:是JPA 默认主键生成策略,主键生成的策略由JPA实现决定。

(八)第9章EJB

32.简述EJB与容器交互的四种机制?p298(与填空题69同一知识点)

①回调方法。回调方法是EJB组件实现的,通过注解或在部署文件中声明的特定方法。

②EJBContext。每个EJB都会得到一个EJBContext对象,它是对容器的直接引用。

③Java命名和目录接口(Java Naming and Directory Interface,JNDI)。JNDI是Java平台的标准扩展,用于访问命名系统。

④上下文和依赖注入。EJB通过注解声明需要的组件和服务器资源,上下文和依赖注入服务将自动创建或获取对应的组件和资源,并将其添加到EJB组件中。

33.画出有状态会话Bean的生命周期示意图。(p314)

34.画出无状态会话Bean的生命周期示意图。(p303)

35.简述EJB的部署描述信息。(p301)

①部署描述信息有一个预先定义的格式,所有符合Java EE规范的EJB组件都可以使用此格式来描述自身信息,而所有符合Java EE规范的服务器必须知道如何读取此格式。这种格式在XML文档类型定义(DTD)中指定。

②部署描述信息描述了EJB的类型及接口方法和EJB实现类的名称。它还指定了EJB中每个方法的事务性属性、哪些安全性角色可以访问每个方法。

③部署描述信息在jar必须以特定名称META-INF/ejb-jar.xml保存。

相关主题
文本预览
相关文档 最新文档