软件构件与中间件技术
目录
- 知识点
- 填空&选择
- 填空
- 选择
- 简答题
- 题目&答案
- 参考
知识点
servlet
什么是servlet
servlet 是一种 Java 程序类,是一种用来扩展以请求-应答模式运行应用程序的服务器的能力的一种 Java 程序。
工作原理
主要接口和类
- 主要接口
- Servlet接口
- ServletRequest、ServletResponse接口
- 主要类
- GenericServlet抽象类
- HttpServlet抽象类
- HttpServletRequest、HttpServletResponse接口
共享变量
在servlet中进行变量的共享可以通过Servlet容器中存在的ServletContext 、HttpSession 和HttpServletRequest 的实例来实现。
- ServletContext
范围最大,应用程序级别的,整个应用程序都能访问。 - HttpSession
会话级别的,在当前的浏览器中都能访问。 - HttpServletRequest
范围最小,请求级别,请求结束,变量的作用域也结束。
读写文件
在Servlet类中可以使用Java提供的输入/输出流来完成对服务器上文件的读取和写入。
- 读文件
一般利用File、FileReader和BufferedReader类的组合来完成。 - 写文件
通常使用File、FileWriter和BufferedWriter的组合来完成。
访问数据库
使用Servlet访问数据库也和普通的Java程序访问数据库的方法相同,都是利用JDBC提供的接口来完成数据库的连接以及数据库的相关操作。
其中常用到的类是Connection类、Statement类和ResultSet。
ServletConfig
每一个ServletConfig对象对应着一个唯一的Servlet。 Servlet容器在调用init方法时,把servletConfig对象当做参数传递给servlet对象。 servletConfig 包含这个Servlet所有配置信息。
JSP
JSP 的概念和原理
- JSP 的概念
JSP是Java Server Page的缩写,是Sun公司倡导、许多公司参与一起建立的一种动态 页技术标准。 - JSF支持4种类型的事件
- 值更改事件
- 动作事件
- 阶段事件
- 系统事件
- 上下文
上下文是指能够将无状态组件的生命周期和交互与定义良好的、可扩展的生命周期上下文绑定在一起的能力。 - 依赖注入
在依赖注入的模式下,创建被调用者的工作不再由调用者来完成,而是由容器来完成,然后再注入调用者。因此依赖注入是指能够以类型安全的方式将组件注入到应用程序的能力。 - 包括
有状态会话 Bean、无状态会话 Bean、单例会话 Bean。 - 单例会话Bean的并发控制
- 容器管理并发CMC
- Bean管理并发BMC
- 单例会话Bean生命周期
单例会话bean与无状态会话bean在大体上是一样的,只不过对于单例会话bean在实例池中只有一个实例存在,而对于无状态会话Bean来说,在实例池中存在多个实例。 - PostConstruction事件
- PreDestroy事件
- 同步接收
同步接收使用MessageConsumer.receive()方法实现,如果消息可用,JMS服务器将这个消息返回,否则接收者一直等待消息的到来。 - 异步接收
异步接收通过向MessageConsumer注册消息监听器对象javax.jms.MessageListener,实现队列中消息的异步接收,消息的处理在onMessage()方法中实现。 - 容器托管
- 应用托管
- http://localhost:8080/ServletTrain/HelloWorld 的路径构成
localhost:8080:服务器路径
ServletTrain:项目路径
HelloWorld:Servlet路径 - HttpServlet 处理客户端请求的两种方法是 doGet 和 doPost。
- 在 JSP 中可以使用 jsp:useBean、jsp:setProperty、jsp:getProperty 这三个动作来完成对 JavaBean 的调用
- 导航设定JSF页面之间的跳转关系,可以为静态导航与动态导航两类。
- Servlet 程序的入口是 init()。
- 用来获取已被创建 JavaBean 组件属性值的语句是**jsp:getProperty**。
- UserBean 是一个托管 Bean,在 JSF 页面中,要访问该类型的实例的 name 属性,#{UserBean.name}。
- 在 Jboss 服务器上,如果想要通过 JNDI 远程访问的方式获得 JNDI 对象,那么应该将该 JNDI 对象绑定到 java:jboss/exported 命名空间中。
- EJB 3.1中将会话Bean分成有状态会话Bean、无状态会话Bean、单例会话Bean。
- EJB3.1的bean可以不需要接口。
- 单例会话 Bean 提供了和无状态会话 Bean 类似的功能,区别是单例会话 Bean 在每个应用程序中只有一个实例,而无状态会话 Bean 会有一个实例池。
- 判断访问 EJB 方式是本地访问还是远程访问取决于 EJB 访问客户端和 EJB 是否位于同一个 JVM。
-
请简述 JNDI 的作用,并说明什么情况下可以使用本地访问,什么情况下需要使用远程访问。
JNDI的作用:为开发人员提供了查找和访问各种命名和目录服务的通用、统一的接口。
客户端与服务端的EJB对象在同一个JVM进程中使用本地访问。
客户端与服务端的EJB对象不在同一个JVM进程中使用远程访问。 -
请简述 JMS 的两种消息传递模型
点对点
-
请简述什么是 ORM 及映射的基本原则
ORM:对象关系映射(Object Relational Mapping)
映射的基本原则:
-
请画图描述有状态会话 Bean 生命周期
-
JPA 实体之间的关联关系分为7种,请详细说明一对一单向和多对多双向关系中该如何使用标注和设计数据库
-
请画图描述 JSF 生命周期
-
简要叙述多层应用体系结构的构成和各个部分的功能。
根据企业信息系统各个组成部分在功能上的区别,将应用系统划分为表示层、业务逻辑层和数据层。- 表示层
也被称为客户层或客户端,用来提供呈现在客户端的人机交互界面,完成用户信息的输入工作和用户的需求结果的呈现工作。 - 业务逻辑层
多层应用体系结构的核心部分,其主要工作包括:- 处理应用程序与具体业务内容相关的逻辑计算。
- 数据库的访问和数据提取工作。
- 用户所提交数据的解析、映射工作。
- 用户所需要信息的界面组织构造工作。
- 分布式系统的管理工作。
- 数据层
提供数据的存储服务,一般就是数据库管理系统。
- 表示层
-
什么是 Servlet要叙述 Servlet 的生命周期。
servlet:servlet 是一种 Java 程序类,是一种用来扩展以请求-应答模式运行应用程序的服务器的能力的一种 Java 程序。
Servlet的生命周期- 装载初始化阶段
如果这个 servlet 的实例不存在于容器中,容器将调用 servlet 类,生成这个 servlet 类的实例,并通过运行 init 方法初始化实例。 - 执行时期
借助 service 方法完成请求和应答的处理,通常情况下,Web 服务器会在比较长的时间里不停的处理请求和应答。 - 结束时期
如果有必要的话,容器将通过运行 servlet 类的 destroy 方法将 servlet 类的实例从容器中去除,从而能结束 servlet。
- 装载初始化阶段
-
什么是有状态会话 Bean要叙述有状态会话 Bean 的生命周期。
有状态会话 Bean:有状态会话 Bean 的实现类通常会包含类成员变量,当一个有状态会话 bean 实例存在时,其成员变量通常用来保存一个特定的客户端与有状态会话 Bean 实例会话的状态,这种状态通常被称为会话状态。
有状态会话 Bean 的生命周期:在有状态会话 Bean 的生命周期中,分为不存在态、就绪态、钝化态等三个状态。容器执行依赖注入并调用标示了 @PostConstruct 元注释的方法。EJB 容器可以通过将 Bean 从内存移出到二级存储使 Bean 失效,容器立即调用标示了 @PrePassivate 元注释的方法。如果客户端调用了 Bean 的业务方法,EJB容器调用标示了 @PostActivate 元注释的方法。客户端调用标示了 @Remove 元注释的方法,EJB容器调用标示了 @PreDestroy 元注释的方法。 -
什么是消息驱动 Bean要叙述消息驱动 Bean 的生命周期。
消息驱动 Bean:消息驱动 Bean 是允许 JavaEE 应用异步地处理消息的企业 Bean,这种类型的 Bean 通常担当一个消息监听器的作用,消息监听器类似于事件监听器,但是只接收消息。
消息驱动 Bean 的生命周期:消息驱动 Bean 也从不被钝化,其生命周期也只有不存在态和就绪态。 EJB 容器通常生成一个消息驱动 Bean 实例池。容器执行依赖注入并调用标示了 @PostConstruct 元注释的方法。EJB 容器调用标示了 @PreDestroy 元注释的方法。 -
程序中,在某个类“Greeting”的对象实例“greeting”前面用“@Inject”修饰,其含义是什么br> 依赖注入:指能够以类型安全的方式将组件注入到应用程序的能力。
-
在两个有关联关系的实体之间,存在几种关联关系在几种关联方向共构成几种关系br> 存在四种关联关系:一对一、一对多、多对一、多对多。
存在两种关联方向:单向关联、双向关联。
总共构成七种关系,没有多对一双向。 -
企业应用可以采用几种安全策略/p>
-
什么是消息么是消息服务息服务有几种类型br> 消息:是软件组件与应用系统之间的一个通讯方法,一个消息客户端可以发送消息到另一个客户端,也可从另一个客户端接收消息。
消息服务:在分布式应用之间提供消息传递。
消息服务的两种类型:点对点与发布/订阅。 - 大纲知识点
- 课件
- 奔腾试题
转换和验证
JSF提供了转换和验证机制,可以对用户在页面输入的数据进行预先处理,从而可以确保传递到后台的数据的正确性。
事件处理
通常,可以在组件中注册事件处理程序(事件监听器)。
JSF标签
JSF 2.0一共有6个标签库。
上下文和依赖注入
EJB
定义
EJB 是Enterprise JavaBean的缩写,又称为企业Bean,是Sun公司提出的服务器端组件规范,它描述了在构建组件的时候所需要解决的一系列问题,如可扩展(Scalable)、分布式(distributed)、事务处理(Transcational)、数据存储(Persistent)、安全性(security)等。
EJB 3.1组件类型
会话 Bean 和消息驱动 Bean。
会话 Bean
MDB的生命事件
JMS 消息接收
接收消息可以分为同步和异步接收。
JPA
概念
JPA全称为Java Persistence API,即Java 持久化API。基于Java 持久化的解决方案,旨在规范、简化Java对象的持久化工作。
如何获得实体管理器
填空&选择
填空
Servlet 程序开发
JSP 程序开发
JSF
JSP 程序开发
JSF
JNDI
EJB 概述
JPA
参考
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!