EJB(Enterprise Java Bean)是J2EE规范的重要核心,它是一个用户分布式业务应用的标准服务端组件模型,它是一种能够高速开发大规模企业应用的组件体系结构。上面这样官方的解释可能对于刚開始接触EJB的人来说还是非常晦涩,只是相信对于已经接触过J2EE规范的人来说,理解起来并非非常困难,J2EE制定出了一套规范,EJB是当中之中的一个,它像JSP、Servlet等规范一样,在这里的定义也仅仅是个模型、结构。
EJB帮助我们攻克了开发一个大型分布式企业应用底层那些系统级的问题(分布式事务、訪问控制、远程方法訪问),系统的提供一种可重用、通用的解决方式。
对于业务开发者来说,主要精力集中在EJB组件的开发上,然后将EJB组件放置于EJB容器之中,这样就能够对完提供完整的业务服务。EJB容器是标准的。这样EJB组件便能够在不论什么EJB容器之间进行移植,我们能够试想。server端有多个实现了EJB容器标准的应用server,我们将开发好的业务EJB组件置于不同的应用server端执行。以此达到应用的可移植性与扩展性。
分类
基于EJB3的分类:
之所以没有将实体Bean放到分类中,是由于在EJB3中。提出了JPA规范替代了原有的实体Bean规范,有些资料上说JPA规范是EJB规范的当中一部分,实际上JPA能够独立EJB单独使用。
Session Bean:“代表一个可处理应用中业务逻辑的完整组件,主要包括了各种业务逻辑的实现代码。
”Session Bean分为有状态、无状态两种,详细的差别将会在后面的文章中详细说明。
MDB:Message Driven Bean。是由JMS驱动运行。是异步消息的消费者。我们能够把它理解成消息的监听器。类似于事件监听器,仅仅只是前者针对的是JMS的消息。后者监听事件源上的事件。
MDB是由无状态的Session Bean演变而来,相对于Session Bean,MDB的最大优势在于全然解耦。client无需知道MDB的存在与否,他们仅仅须要向Destination发送消息。就能够实现相互通信。
总结
在这里作为一个EJB3.0的入门。我们仅仅对EJB的概念、用处、分类等进行了简单阐述与简单的比較,随着EJB的发展,对于开发者的应用。已经简单了非常多。
后面随着对EJB3.X的学习与应用,将逐步总结EJB涉及到的相关技术点以及设计理念的内容。敬请期待!