【EJB基础入门与总结】
Enterprise JavaBean (EJB) 是Java EE平台中用于构建企业级应用程序的关键组件。本文档旨在提供EJB的基础知识,帮助读者掌握EJB的基本概念和应用,达到入门水平。
2.1 EJB简介
EJB是Java平台上的一个标准,用于开发和部署具有事务处理、分布式功能的服务器端组件。企业可以自建组件或从第三方供应商购买,这些组件在EJB容器中运行,为网络中的客户端提供远程服务。Enterprise Bean是EJB的核心,它们是分布式对象,由EJB容器管理,提供跨网络的服务。
2.2 EJB规范
EJB规范定义了基于组件的事务性分布式对象系统的架构。它包含一组编程接口和类,为bean开发者和EJB服务器供应商提供了一个公共平台,确保功能丰富的同时保证可移植性。
2.2.1 EJB容器
EJB容器是运行Enterprise Bean的特殊环境。容器负责管理Bean的生命周期,包括远程访问控制、安全、持久化、事务处理、并发和资源管理。Bean无法在容器之外运行,它们依赖容器来满足其需求,如访问JDBC连接、与其他Bean交互等。Bean与容器的交互主要通过三种机制:
- 回调方法:容器在Bean生命周期的关键事件上调用Bean的方法,例如在合用、持久化、结束事务等操作前后。
- EJBContext接口:Bean通过EJBContext获取关于容器的信息,如客户身份、事务状态,或获取自身引用。
- Java Naming and Directory Interface (JNDI):Bean使用JNDI访问资源,如JDBC连接、其他Bean和特定属性,通过环境命名上下文(ENC)管理。
2.2.2 Enterprise Bean
Bean由两个定义业务方法的接口和一个实现类组成。客户端通过Bean的公共接口进行操作。实现类(Bean类)在运行时实例化,成为分布式对象。Bean分为三种类型:
- SessionBean:处理客户端请求,通常用于短期、状态化的交互。
- EntityBean:代表持久性的商业实体,与数据库紧密关联。
- MessageDrivenBean:作为JMS监听器,异步处理接收到的消息。
2.2.3 远程和本地接口
远程接口允许远程客户端通过网络访问Bean,而本地接口则用于与在同一JVM内的组件通信。两者都封装了Bean的能力,提供创建、更新、交互和删除Bean所需的方法。
总结来说,EJB是Java EE中构建可扩展、安全、高效的企业级应用的重要工具。了解和掌握EJB的基本概念、容器机制以及Bean的类型和接口,对于开发分布式、事务处理的应用至关重要。通过本文档,读者将能够建立起对EJB的初步认识,并能够开始尝试EJB的基本应用。