EJB入门:三大组件与实战应用服务器

需积分: 1 1 下载量 188 浏览量 更新于2024-07-23 收藏 13.57MB PPT 举报
EJB(Enterprise JavaBeans)是Java平台企业级应用开发中的关键组件,它为构建分布式业务应用程序提供了一个标准的服务端组件模型。EJB的主要目标是实现可伸缩性、事务性和多用户安全性,使得开发者能够编写一次代码,然后部署到多个支持EJB规范的服务器平台,如JBoss、WebLogic等。 EJB主要定义了三种类型的Bean: 1. **会话Bean(SessionBean)**:会话Bean是EJB的核心,用于处理业务逻辑。它们可以分为有状态(Stateful Session Bean)和无状态(Stateless Session Bean)。有状态Bean在处理每个请求时保留客户端的状态,而无状态Bean则不保存状态,每次请求都会创建一个新的实例。会话Bean可以直接操作数据库,但也常常通过EntityBean间接访问数据,以实现数据持久化。 2. **实体Bean(EntityBean)**:实体Bean在EJB3.0中扮演着数据库实体的角色,它们代表了数据库表中的实体对象。在编程中,实体Bean主要用于对象关系映射(ORM),将Java对象与数据库表结构关联起来,简化了数据库操作。 3. **消息驱动Bean(MessageDrivenBean,MDB)**:MDB专注于处理异步消息,如JMS(Java Message Service)消息。它用于那些业务处理时间较长且结果不需要立即反馈给用户的场景,如后台处理任务或事件驱动的应用。 在Java EE应用服务器中,EJB运行于EJB容器内,而Web容器如Tomcat主要负责Web应用的部署。值得注意的是,虽然Tomcat是流行的Web容器,但它并不支持EJB,这意味着EJB应用不能直接在Tomcat上运行。常见的支持EJB3.0的服务器包括JBoss(尤其是4.2.x及以上版本)、Glassfish、WebLogic(10及以上版本)、Sun ApplicationServer(9.0以上)、Oracle ApplicationServer(10g以上)以及国内的Apusic应用服务器。 EJB依赖于Java Naming and Directory Interface (JNDI),这是一个自Java 1.3版本以来的标准API,它提供了一种通用的方式来访问和管理命名和目录服务,如DNS、LDAP、Active Directory和RMI注册。通过JNDI,EJB组件可以查找并引用所需的资源和服务,确保了系统的统一管理和配置。EJB是Java企业级应用开发的重要基石,它为开发人员提供了构建复杂分布式系统的能力和灵活性。