Java系列之EJB
2015-06-30 08:11
417 查看
简介
EJB是sun的JavaEE服务器端组件模型,设计目标与核心应用是部署分布式应用程序。凭借java跨平台的优势,用EJB技术部署的分布式系统可以不限于特定的平台。EJB
(Enterprise JavaBean)是J2EE(javaEE)的一部分,定义了一个用于开发基于组件的企业多重应用程序的标准。其特点包括网络服务支持和核心开发工具(SDK)。 在J2EE里,Enterprise Java Beans(EJB)称为Java 企业Bean,是Java的核心代码,分别是会话Bean(Session Bean),实体Bean(Entity Bean)和消息驱动Bean(MessageDriven Bean)。
会话Bean
SessionBean用于实现业务逻辑,它可以是有状态的,也可以是无状态的。每当客户端请求时,容器就会选择一个SessionBean来为客户端服务。SessionBean可以直接访问数据库,但更多时候,它会通过Entity Bean实现数据访问。
实体Bean
Entity Bean是域模型对象,用于实现O/R映射,负责将数据库中的表记录映射为内存中的Entity对象,事实上,创建一个EntityBean对象相当于新建一条记录,删除一个Entity Bean会同时从数据库中删除对应记录,修改一个Entity Bean时,容器会自动将Entity Bean的状态和数据库同步。
消息驱动Bean
是EJB2.0中引入的新的企业Bean,它基于JMS消息,只能接收客户端发送的JMS消息然后处理。MDB实际上是一个异步的无状态SessionBean,客户端调用MDB后无需等待,立刻返回,MDB将异步处理客户请求。这适合于需要异步处理请求的场合,比如订单处理,这样就能避免客户端长时间的等待一个方法调用直到返回结果。EJB实际上是SUN的J2EE中的一套规范,并且规定了一系列的API用来实现把EJB概念转换成EJB产品。EJB是BEANS,BEANS是什么概念?那就是得有一个容纳她,让她可劲造腾的地方,就是得有容器。EJB必须生存在EJB容器中,这个容器可是功能强大之极!她首先要包装你BEAN,。EJB的客户程序实际上从来就不和你编写的EJB直接打交道,他们之间是通过HOME/REMOTE接口来发生关系的。它负责你的BEAN的所有的吃喝拉撒睡,比如BEAN的持续化,安全性,事务管理。
个人对于EJB也不是很理解,只是做一些知识点的梳理,后面加深理解后再跟大家分享经验……
相关文章推荐
- Spring它不支持依赖注入static静态变量
- 使用Gradle构建Java项目
- maven构建java web项目(eclipse原理同)
- 深入 Java 调试体系,第 2 部分: JVMTI 和 Agent 实现
- 基于 JVMTI 实现 Java 线程的监控
- Java RMI之HelloWorld篇
- Java 理论与实践: 用 JMX 检测应用程序
- IBM 的 Java 诊断,第 3 部分: 使用面向 Java 的 Lock Analyzer 诊断同步和锁问题
- Java SE 6 新特性: 编译器 API
- Java SE 6 新特性: JMX 与系统管理
- 扩展 Spring 的 JMX 支持
- JAVA工具简绍路径
- 关于 Java 性能监控您不知道的 5 件事,第 2 部分
- 关于 Java 常用工具您不知道的 5 件事
- Java 运行时监控,第 3 部分: 监控应用程序生态系统的性能与可用性
- Java 运行时监控,第 2 部分: 编译后插装和性能监控
- Java 运行时监控,第 1 部分: Java 系统运行时性能和可用性监控
- java集群优化——初探多线程
- java初学1
- java 面向对象的开始