1、Java EE期末考试 · 填空题: · Java EE为满足开发多层体系构造企业级应用需求,提出_组件-容器________编程思想。Java EE应用根本软件单元是_Java EE组件_______. 根本软件单元运行环境被称为___容器________. · 两层体系构造应用程序分为__客户层_____和____效劳器层_____. · 所谓企业级应用程序,并不是特指为企业开发应用软件,而是泛指那些为_大型组织部门__创立应用程序。 · 在三层分布式企业应用程序中,包括_客户层____,__应用效劳器层_____,____数据效劳器层______三层。 · Java EE客户
2、端组件既可以是__一个Web浏览器__________、___一个Applet________,也可以是一个__应用程序______.
· Servlet组件在进展重定向时,需要使用ServletResponse接口方法是__sendRedirect()______.
· ServletRequest提供了两个方法用于从请求中解析出上传文件: ___Part getPart〔String name〕___________和__Collection
3、件____,_业务组件____. · Servlet配置参数保存在__ServletConfig()______________对象中,一个Servlet该配置对象〔能/否〕___否〔不能〕__________被其他Servlet访问。 · Servlet支持两种格式输入/输出流:__字符输入/输出流______和__字节输入/输出流_。 · MIME全称是_多媒体Internet邮件扩展____, ServletResponse中响应正文默认MIME类型为_text/plain______________, 而 ServetResponse中响应正文默认MIME类型为__text
4、/html_________________. · PDF文件MIME类型是__application/pdf________________, Microsoft Word文档类型是__application/msword___________。在Servlet中设置MIME类型应使用__response__对象方法_____setContentType()________. · 所有Servlet都必须实现下面两个接口之一:__通用Servlet接口______和__ Servlet接口_________。 · 协议是一种__无状态____协议,效劳器不记录关于客户任何
5、信息。
· 在Web程序设计中,客户端以表单方式向效劳器提交数据是最常见方法。表单数据提交方法有两种:___POST方法_____和___Get方法_______________.
· 常见会话跟踪技术有__Cookie___, _URL重写___, _隐藏表单域__.
· JSP内置对象作用范围有四种_request_____,_page____,_session___,_application_____.
· JSPinclude动作组件根本语法:
6、 · JSP页面中声明变量根本格式是:__<%!声明代码 %>___________________. · JSP页面除了普通HTML代码之外,还主要有如下三种成分:_脚本元素〔Scripting Element〕___、__指令〔Directive〕______、__动作〔Action〕___________________。 · JSP指令有三种,分别是__page ____, ___include___,__taglib____. · JSP页面中有两种类型注释:输出到客户端注释:___和 不输出到客户端注释:<%- -comme
7、nt- -%>_______。
· 在JSP页面中,与Java Bean有关标记有三个:
8、每个属性都有一个set方法, _对于每个属性都有一个get方法 ,_不带任何参数构造函数_____. · 利用JDBC访问数据库过程中,主要涉及三种资源:_对数据库连接对象Connection__,_SQL语句对象Statement__,_访问结果集对象ResultSet或RowSet____. · 给定具体JDBC URL,获取数据库连接方法是调用__DriverManager_____对象_getConnection()___方法。 · ResultSet具有三个获取流方法:_getBinaryStream___、_getAsciiStream____、_getUnicodeStre
9、am___. · JDBC支持三种类型Statement对象:Statement, _PrepareStatement _____,_CallableStatement______. · 根据效劳提供商机制,效劳提供商配置文件必须存放于_META-INF/services___________目录下。 · JDBC URL格式是: MySQL数据库:_jdbc:mysql://机器名/数据库名;GlassFish内置Java DB:jdbc:derby://机器名/数据库名;_Oracle数据库: jdbc:oracle:thin@机器名: 端口名: 数据库名____. · 提供
10、了定义和访问资源标准机制,它包含两个JSF标记访问资源:_
11、ble__.
· JSF在转换和验证时都有可能会产生错误信息,这些错误信息可以通过标记
12、I全称是_Contexts and Dependecy Injection__,CDI Bean是Java EE 6标准一项重大功能特性之一,提供了一种更加强大托管Bean模型。与Managed Bean不同是,这种托管Bean是由_Java EE 6 应用效劳器不是JSF框架_______来管理和控制。 · JSF中立即事件类型通过设置组件__immediate___________属性来设置,它会将提前进展___应用请求值阶段___而无须等到调用应用阶段。 · JSF核心标记库有四种:_HTML标记_,_Core标记___,__Facelets标记 ,_复合组件标记. · JPA操作
13、根本单元称为__Entity________, 它其实是一个普通__Java______对象,通常对应数据库中。 · 在JPA中,注解@Transient表示含义是:_JPA不会在关系数据库表中创立与注解属性对应映射字段____. · JPA主键有四种生成策略,他们分别是_Table策略,_Sequence策略,_Identity策略,_Auto策略. · 在JPA中,如果使用了类型,。 · 在JPA中,持久化上下文有两种类型,它们是_事物范围持久化上下文_, __扩展范围持久化上下文__. · 在JPA中,新增一个实体,调用EntityManage方法是_persist()____
14、 查询时调用方法是_find()________, 该方法两个参数是_Entity类型____, __EntityID______. · 命名参数格式是_“:+参数 名〞_, 位置参数格式是__“+位置编号〞____ · 在JPQL中,为了支持使用数据库本地支持SQL语句,提供了一种称为_参数设置_查询方式,该查询方式也分为__命名参数____和__位置参数_____两种类型 · ORM全称是_ Object Relational Mapping __ · JPA操作根本单元称为__Entity________, 它其实是一个普通__Java______对象,通常对应数据库中。
15、 · Entity中char[], Character或String类型属性通常映射为_CLOB_〔Character large Ojects〕___, 而Entity中byte[], Byte[]或实现了_Serializable_____接口对象通常映射为___BLOB_____. · JPA支持两种类型加载方式:__EAGER__, ____LAZY____. · EJB组件分为两种类型:_会话Bean〔Session Bean〕_,_消息驱动Bean(Message Driven Bean)_. · 在标准中, EJB组件实现可以仅仅是一个POJO,其全称是_Plain O
16、ld Java Object_.它不继承任何类型,也不需要任何实现接口。 · 会话Bean分为三种类型:_无状态会话Bean〔Stateless Bean〕_,_有状态会话Bean〔Stateful Bean〕,_单例会话Bean〔Singleton Session Bean〕_. · 单例Bean可以采用两种并发管理方式,一种是__由容器托管______,另一种是___由Bean自身来实现___. · EJB组件通过以下四种机制与容器交互:回调方法,__EJBContext_,_Java命名和目录接口_,__上下文和依赖注入__. · 1.JNDI 〔Java Naming
17、and Directory Interface, Java命名和效劳接口〕 简化了企业应用组件之间查找调用,它提供了应用命名环境,〔Naming Environment〕,企业应用组件在命名环境注册登记,并且通过 命名环境查找所需其他组件。 2.JDBC (Java DataBase Connectivity,Java数据库连接)API使Java EE平台和各种关系数据库之间连接起来,JDBC技术提供jAVA程序和数据库效劳器之间连接效劳,同时它能保证 数据事务正常进展。 3.JTA (Java Transaction API.Java 事务API)允许应用程序执行分布式事务处
18、理——在两个或多个网络计算机资源上访问并且更新数据,JTA用于保证数据读写时不会出错。 4. JAAS (Java Authentication Authorization Service, Java 验证和授权效劳)提供了灵活和可伸缩机制来保证客户端或效劳器端Java程序。 5 JCA ( Java Commector Architecture, Java连接框架)是一组用于连接Java EE平台来企业 信息系统 〔EIS〕标准API. 6 CDI 〔Contexts and Dependency Injection 上下文和依赖注入〕全得容器以类型平安松耦合方式 为
19、EJB组件提供一种上下文效劳。 7 JMS 〔Java Message Service ,Java消息效劳〕API允许Java EE应用程序 访问企业 消息系统 ,在Java EE平台上,消息效劳 依靠省EJB来实现。 8. JSF ( Java Server Faces)是一种用于构建Java EE Web应用表现层框架 标准,它提供了一种以组件为中心事件驱动用户界面构建方法,从而大大简化 了Java EE Web 应用开发。 9.JPA 〔java Persistence API,Java 持久性应用接口〕标准了Java平台下持久化实现,大大提高 了应用可移植性。
20、 10.Java EE 〔Java Enterprise Edition〕,是一种体系构造 而不是一门编程语言,是一个标准中间件体系构造,旨在简化和标准分机式多层企业 应用系统开发和部署。 11.企业级应用程序 所谓企业级应用程序,并不是特指为企业开发应用软件,而是泛指 那些为大型组织部门创立应用程序,一般有以下特点: (1)分布式 (2)高速反响性 (3)平安性 (4)可扩展性 (5)集成化 12.servlet Servlet是一种独立于操作系统平台和网络传输协议效劳器端Java应用程序,它用来扩展效劳器功能,可以 生成动态Web页面。 13.JSP
21、 它是一种实现 普通静态HTML和动态HTML混合编码技术,可谓安装 到任何能够存放 精通web页面地方。 14.JPQL ( Java persistence Query Language)提供了一套与数据库无关基于Entity查询语言,称为JPQL,它操作是抽象持久化模型,包括 Entity,属性,关联等。 简答题 1三层体系构造优点有哪些? (1) 平安性高 中间件效劳器层隔离了客户端程序对数据效劳器直接访问,保护信息平安 (2) 易维护: 业务规那么变化后,客户端程序根本不做改动 (3) 快速响应:通过中间件效劳器层负载均衡以及缓存数据能力, (4) 系统扩展
22、灵活: 2两层体系构造缺点有哪些? (1) 平安性低:客户端程序与数据库效劳器直接连接,容易被人入侵数据库, (2) 部署困难:客户端应用逻辑导致客户端程序肥大 (3) 消耗系统资源:每个客户端程序都要直接连号以数据库效劳器,导致系统性能下降。 3简述Java EE“组件-容器〞编程思想 容器为组件提供必需底层根底功能,容器提供底层根底功能被称为效劳,组件通过调用容器标准效劳来与外界交互,为满足企业级应用灵活部署,组件与容器之间必须既松散耦合,又能够强有力地交互。 4 Java EE体系构造优点 (1) 独立天硬件配置和操作系统 (2) 坚持面向对象设计原那么
23、 (3) 灵活性,可移植性和互操作性 (4) 轻松企业信息系统集成 5 在创立Web应用程序时,通过Servlet上下文可以实现哪些功能? (1) 访问WEB应用程序资源: ,ServletContext可以通过,getResource()和getResourceAsStream()方法访问Web应用程序内静态资源文件 (2) 在Servlet上下文属性中保存Web应用程序信息: 上下文对象可以用来存储java对象,通过字符串值key来识别对象,这些属性对整个Web应用程序都是全局 (3) 获取应用初始化参数信息: 可以调用Servlet.Context.getinitPara
24、meterNames()返回一个初始化参数枚举对象〔java.util.Enumeration〕,或直接指定一个参数名来得到特定大数什 (4) 提供日志支持:可以简单地通过调用ServletContext.log(String msg)或ServletContext.log(String masg.Throwable throwable)方法向底层Servlet日志记录写入日志信息;还可以写入导演信息和throwable跟踪栈 6 Servlet根本工作流程? (1) 客户端将请求发送到效劳器 (2) 效劳器上Web容器实例化〔装入〕Servlet,并为Servlet进程创立线
25、程 (3) Web容器将请求信息发送到Servlet (4) Servlet创立一个响应,并将其返回到Web容器 (5) Web容器将返回客户端 (6) 效劳器关闭或Servlet空闲时间超过一定限度时,调用destory〔〕方法退出 7 ServletResponsesendRedirect方法与RequestDispatcherforward方法有什么区别? 从操作本质上,RequestDispatcher.forward() 是容器中控制权转向,在客户端浏览器地址栏中不会显示出转向地址,而 ServletResponsesendRedirect()那么是
26、完全跳转,浏览器将会得到跳转地址,并重新发送请求连接,
从性能上,前者是在同一次请求处理过程中,后者是完毕第一次请求,由浏览器发起一次新请求,因此,前者更加高效;
8 JSP如何与Java Bean结合?二者如何传递消息?
在JSP页面中与JavaBean有关标记有三个:
(1) 27、etProperty name=〞s1” property=〞property Name〞>
(3) 28、客户端请求,封装了用户提交信息
(2) response 它向客户端发送数据,代表是效劳器对客户端响应;
(3) session 是一种无状态协议,每个客户端请求被 当成独立事务
(4) application 代表运行在效劳器上web应用程序 相当于servlet上下文
(5) out 对象代表向客户端发送数据对象
10 29、浏览器地址栏上可以看到地址变化,在前者那么不同,直接在效劳器端执行重定位,浏览器并不知道,这从浏览器地址 并不变化可以证实。
11画出JDBC访问数据库层次构造
12简述JDBC工作原理
JDBC为多种关系 数据库提供了统一访问方式,作为 特定厂商数据库访问API一种高级,它主要包含一些通用接口类,实际上,真正 数据库访问操作实现是由各自数据库厂商提供,通常把厂商提供特定于数据库访问API称为数据库JDBC驱动程序 ,JDBC通过 提供一个抽象数据库接口,使得程序开发人员在编程时可以不用绑定在特定数据库厂商API上,大大增加了应用程序可移植性。
13列举ResultS 30、et光标5个属性,并进展说明。
(1) ResultSet.TYPE_FORWORD_ONLY:包含只进光标结果集,只能 调用 next()方法向前遍历,不能回头查询
(2) ResultSet.TYPE_SCROLL_INSENSITIVE:可前后滚动可以调用first(),nest(),absolute(),等方法对数据进展操作,之后其它用户以数据库更改不会影响到此结果。
(3) ResultSet.TYPE_SCROLL_SENSITIVE可前后滚动,之后其它用户以数据库更改会影响到此结果。
(4)
(5) ResultSet.CONCUR_READ_ONLY:结果集中包含数据 31、为只读数据
(6) ResultSet.CONCUR_UPDATABLE:结果集中数据可更新到数据库中
14什么是JSF?它有哪些优点?
(1) JSF是 Java ee标准推荐表现层框架标准
(2) JSF吸收了流行框架优点
(3) 便于与其他 JAVA EE技术集成
15描述JSF常规流程,对每个阶段做简要说明
(1) 恢复视图 :对于每个JSF请求,都会对应一个JSF视图,JSF框架FaceServlet负责定位这一视图
(2) 应用请求值:本阶段目标是获取 每个组件当前状态
(3) 处理校验: 本阶段目标是校验 每个组件当前状态是否合法
(4) 更新模型值: 32、本阶段 目标是将UI组件状态与业务逻辑组件 Managed Bean状态 进展同步
(5) 调用应用:本阶段 主要 目标是进展消息事件处理
(6) 显示响应:本阶段目标包含两个 绘制结果视图组件树并输出到客户端;将当前组件 树状态 进展保存以便响应之后请求
16描述Managed Bean生命周期。
P 153
17列举JSF框架中Bean验证框架5个内置注解,并说明其作用。
(1) Min:所注解元素必须是数字,其值要大于或等于给定最小值
(2) Max所注解元素必须是数字,其值要小于或等于给定最大值
(3) Size 所注解元素必须位于给定最大或最小值之间,
33、4) NotNull 被注解元素必须不能为空
(5) Null 注解元素必须为空
(6) Future 所注解元素必须是未来日期
(7) Last 所注解元素必须是过去日期
(8) Patterm 被注解元素〔String〕必须匹配给定JAVAQ正那么表达式
18详细描述命名查询与动态查询区别?〔从定义、创立、系统性能三方面说明〕
19论述Entity状态和生命周期变化
(1) New:已经创立了Entity实例,但没与持久化上下文进展关联,没有实现与数据库中信息是映射
(2) Managed:Entity:已经与持久化上下文进展关联,且实现与数据库中信 34、息映射
(3) Detached:Entity 实现数据库中信息映射,但不再与持久化上下文进展关联
(4) Removed:Entity 对就数据库中数据已被删除
转化图见P283
20描述有状态会话Bean生命周期。
图见p314
21描述无状态会话Bean生命周期
图见p303
22比拟消息驱动Bean与会话Bean
〔1〕在某些方面,消息驱动bean类似于无状态会话Bean:
消息驱动bean实例通常不保存特定客户端数据或会话状态
消息驱动Bean所有 实例都是等效,
单个消息驱动Bean可以处理来自多个客户端消息
〔2〕但与会话Bean不同,消息驱动Bean客户端不通过接口对其进展访问,它们之间是异步消息松散耦合,消息驱动Bean只有一个bean类,没有接口类
三: 编程题重点
如何使用






