一、EJB基础
EJB(Enterprise Bean)是Java EE的核心组件技术之一,它是创建基于Java的服务器端分布式组件的标准。(----组件,分布式...是什么鬼*.*) EJB规范定义了如何编写Java EE服务器端分布式组件,提供了组件与管理组件的容器之间的标准约定,使得开发人员能够快速开发出具有伸缩性的企业级应用。(----好高大上*.*)
EJB技术使得Java程序员可以关注与实现业务逻辑,而不再需要辛苦编写那些与事务、安全等通用特性相关的代码,因为EJB规范将这些任务委托给容器,并由实现容器的应用服务器厂商完成。
注意:Enterprise Bean与Java Bean是两个完全不同的概念。Java Bean是一台机器上同一个地址空间中运行的组件,因此JavaBean是进程内的组件。JavaBean使用java。beans包开发,它是java标准版的一部分。Enterprise Bean是在多台机器上跨几个地址空间运行的组件,因此Enterprise Bean是进程间组件。Enterprise Bean是使用javax.ejb包开发的,它是标准JDK的扩展,是JavaEnterprise Edition的一部分。
EJB重点解决信息系统开发中的以下难题:
1.高级功能特性需求。 在实现复杂的业务逻辑时,要求并发、安全、事务处理等高级功能,EJB容器提供了这些功能。
2.大规模分布式系统。 系统物理上部署在分散的多个节点,这些节点上的组件之间需要进行交互来完成复杂的业务逻辑,如银行转账系统、铁路售票系统等。
3.支持多种类型的客户端。 企业信息系统的客户端,除了最常见的Web浏览器外,往往还需要支持Applet、桌面应用等
EJB容器:四种交互方式:1)回掉方法 2)EJBConteext 3)JNDI 4)上下文和依赖注入
EJB组件:
EJB接口:Local接口声明了供本地客户的使用方法;Remote接口声明了供远程客户使用的方法。默认为Local。
EJB分类:会话Bean(Session Bean)和消息驱动Bean(Message Driven Bean)
二、无状态会话Bean
EJB容器将通过部署文件ejb-jar.xml或Bean实现类中的注解来判断会话Bean是有状态还是无状态的。
每次调用只对客户提供业务逻辑,但不保存客户端的任何数据状态。但并不意味着无状态类型的会话Bean没有状态,而是这些状态背包存在客户端,容器不负责管理。
三、有状态会话Bean
四、单例Bean
五、消息驱动Bean
异步
六、Time服务
工作在TimeSession中
七、拦截器
八、异步方法2