### JAVA面试宝典大全知识点详解 #### EJB (Enterprise JavaBeans) **概念解析:** EJB,即Enterprise JavaBeans,是一种服务器端的组件模型,它主要用于构建可移植、可重用的企业级应用组件。EJB的设计目的是为了简化复杂的业务逻辑处理,通过容器托管的方式将业务逻辑与底层细节相分离。 **种类及作用:** 1. **Entity Bean** — 用于表示持久化对象的状态。它通常用于映射关系数据库中的表格,并存储业务数据。 - **CMP (Container Managed Persistence)** — 在这种模式下,EJB容器负责管理Entity Bean的持久性,程序员无需编写任何与持久性相关的代码。 - **BMP (Bean Managed Persistence)** — 在这种模式下,程序员需要自己编写代码来管理Entity Bean的持久性,包括所有与数据库交互的逻辑。 2. **Session Bean** — 主要用于执行业务逻辑。它们可以分为两种类型: - **Stateless Session Bean** — 不保存客户端状态,每个客户端请求可以由不同的Bean实例处理。 - **Stateful Session Bean** — 保存客户端状态,客户端的每次请求都会由同一个Bean实例处理。 3. **Message-Driven Bean** — 用于处理异步消息。这些Bean通常用于响应消息驱动的事件,例如从消息队列中接收消息。 **主接口与组件接口的区别:** - **主接口 (Home Interface)** — 定义了如何创建和查找Bean的方法,通常用于生命周期管理。 - **组件接口 (Component Interface)** — 定义了Bean提供的业务方法,即客户端与Bean交互的主要方式。 **Finder方法与Select方法的区别:** - **Finder 方法** — 用于检索Entity Bean的实例,一般在远程和/或本地Home接口中声明。 - **Select 方法** — 用于查询特定的数据,通常在Bean类中定义。 **RMI (Remote Method Invocation) 远程方法调用:** RMI 是 Java 中用于实现分布式对象间通信的一种机制。通过 RMI,开发者可以在不同的 JVM 实例之间调用方法,如同调用本地方法一样简单。RMI 基于 Java 的远程方法调用技术,支持跨进程、跨计算机的远程访问。 **主接口方法的定义与写法:** - **创建方法** — 创建Entity Bean实例时调用的方法。对于无状态Session Bean,必须只有一个无参数的创建方法;对于有状态Session Bean,至少需要一个创建方法;对于Entity Bean,则可以有零个或多个创建方法。 - **Finder 方法** — 用于在数据库中查找Entity Bean实例,这些方法必须在Home接口中声明。 **JMS (Java Message Service) 消息传递的方式:** JMS 提供了两种消息传递模型: - **点对点 (Point-to-Point)** — 消息被发送到队列,每个消费者都只能消费一次消息。 - **发布/订阅 (Publish and Subscribe)** — 消息被发送到主题,所有订阅该主题的消费者都能接收到消息。 **EJB客户端访问后台EJB的代码示例:** ```java // 示例代码,用于演示客户端如何访问EJB public class Client { public static void main(String[] args) { // 初始化上下文 Context context = new InitialContext(); try { // 查找EJB Object objRef = context.lookup("java:global/myApp/myModule/MySessionBean"); // 强制转换为远程接口 MySessionBean mySessionBean = (MySessionBean) PortableRemoteObject.narrow(objRef, MySessionBean.class); // 调用业务方法 String result = mySessionBean.myBusinessMethod(); System.out.println("Result: " + result); } catch (NamingException e) { e.printStackTrace(); } } } ``` 以上内容概括了EJB的基础知识、主要特点及其应用场景。对于初学者而言,掌握这些核心概念有助于更好地理解EJB的工作原理和技术优势。
- 粉丝: 288
- 资源: 11
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助