1. JCF介绍<o:p></o:p>
3.1 两种打包部署方式<o:p></o:p>
本框架提供两种部署方式。采用ant来编译,打包会分成三部分,一个是ear包,包括了后台所有的依赖包和代码,一个是客户端用的jar包,以*client.jar来标识,客户端引用此jar包就可以远程访问后台业务逻辑的入BizDelegate;另外一种部署方式是将后台所有的代码打包到一个jar包中,以*server.jar来标识,客户端直接引入此jar包和Spring的配置文件以及相关的依赖包就可以绕开EJB直接调有后台的业务逻辑。第一种部署方式在方法的调用链中有一个SLSB,后台必须要部署在EJB容器中,如WebSphere、Weblogic、Jboss等。第二种部署方式绕过了SLSB,系统可以在非EJB容器中运行,如Tomcat、Resin等。
在Spring的配置文件中做如下配置:
<bean id=" BizDelegate" class="com.gsta.bnet.bizservice.BizDelegate"><o:p></o:p>
<property name="delegate"><o:p></o:p>
<ref bean="POJODelegate" /><o:p></o:p>
</property><o:p></o:p>
</bean><o:p></o:p>
<bean id="POJODelegate"<o:p></o:p>
class="com.gsta.bnet.bizservice.POJODelegate"><o:p></o:p>
</bean><o:p></o:p>
<bean id="EjbDelegate"<o:p></o:p>
class="com.gsta.bnet.bizservice.EjbDelegate"><o:p></o:p>
</bean>
|
<o:p> </o:p>
当BizDelegate所注入的ref bean指向EjbDelegate的时候,前台是通过远程EJB的方式来调用后台程序的,这种方式适合前台和后台分离的情况。当BizDelegate所注入的ref bean指向POJODelegate的时候,前台是通过非EJB方式来访问后台的。BizDelegate继承抽象类AbstractBizDelegate,AbstractBizDelegate非常简单,根据配置文件的不同,利用Spring的设值注入功能,将不同的Delegate注入到AbstractBizDelegate中,前台在调用getDelegate方法时就会调用不同的Delegate,init方法是要执行一些系统初始化的数据,用EJB方式要得到一个Session Bean的Home接口,Spring的ApplicationContext初始化放到了Session Bean中。用非EJB方式就要初始化Spring的ApplicationContext并保存于一个ServiceLocator类中。AbstractBizDelegate的关键代码如下:<o:p></o:p>
private DelegateType delegate;<o:p></o:p>
public void setDelegate(DelegateType delegate) {<o:p></o:p>
this.delegate = delegate;<o:p></o:p>
}<o:p></o:p>
public DelegateType getDelegate() {<o:p></o:p>
return delegate;<o:p></o:p>
}<o:p></o:p>
public synchronized boolean init(String jndiName)<o:p></o:p>
{<o:p></o:p>
return delegate.init(jndiName);<o:p></o:p>
}
|
<o:p> </o:p>
分享到:
相关推荐
### Spring与EJB3.0的关键区别及其优劣分析 #### 一、Spring框架概述 **1.1 引言** Spring作为一个广受欢迎的开源框架,最初被设计用于减轻企业级应用开发中的复杂性问题。它的一个显著特点在于模块化的分层架构...
Struts2、Spring和EJB(Struts2+Spring+EJB,简称SSE)是Java企业级开发中常用的三大框架,它们各自承担着不同的职责,共同构建了一个强大的应用架构。Struts2作为MVC(Model-View-Controller)框架,负责处理用户...
总结起来,基于动态代理的Java远程调用框架旨在克服RMI和EJB的一些缺点,提供更加简洁、灵活和高效的远程调用解决方案。它利用Java的动态代理特性,降低了分布式系统开发的复杂性,同时保持了高度的可扩展性和可定制...
Spring 集成 EJB(Enterprise JavaBeans)是将轻量级的 Spring 框架与企业级的 EJB 3.x 技术相结合的一种方式,以实现更灵活且高效的企业应用开发。Spring 提供了一个丰富的IoC(Inversion of Control,控制反转)和...
Spring 和 EJB3 是两种在企业级 Java 应用开发中广泛使用的框架。Spring 框架以其轻量级、模块化和灵活的设计而闻名,而 EJB3(Enterprise JavaBeans 3)则是 Java EE(现在称为Jakarta EE)平台的一部分,提供了...
3. **Spring与ejb的协作**:在某些场景下,会话bean可能只负责协调工作,而具体的业务逻辑由Spring的bean来执行。这种方式可以将 ejb 的强健性与 Spring 的易用性结合在一起。 **CommonEjbProj项目概述** ...
Struts2、Spring和EJB3是Java Web开发中的三个重要框架,它们分别在MVC模式、依赖注入和企业级服务方面发挥着关键作用。这个压缩包提供的源代码是一个完整的项目示例,展示了如何将这三个框架集成到一个应用程序中。...
在Java开发领域,EJB(Enterprise JavaBeans)3、Spring框架和Struts框架是常见的企业级应用开发技术,它们结合使用可以构建高效、可扩展的Web应用程序,特别是对于复杂的业务逻辑如银行系统。以下是这三个技术在...
基于Facade的EJB远程调用技术 基于Facade的EJB远程调用技术
在IT行业中,Hibernate、Spring、EJB(Enterprise JavaBeans)和Ajax是四个非常重要的技术,它们各自在软件开发的不同方面发挥着关键作用。下面将分别详细介绍这些技术,并探讨它们之间的协同工作方式。 **...
Enterprise JavaBeans(EJB)是Java EE平台中的核心组件,用于构建可扩展、安全和事务处理的服务器端应用程序。EJB提供了多种类型的组件,包括Session Beans、Message-driven Beans和Entity Beans,它们各自承担不同...
《JavaEE实用开发指南:基于Weblogic+EJB3+Struts2+Hibernate+Spring》-- part2/3
EJB3.0和Spring是两种广泛使用的Java企业级应用程序开发框架,它们在很多方面有所不同,这些差异主要体现在以下几个关键点: 1. **厂商无关性(Vendor Independence)** - EJB3.0遵循开放标准,由Java社区内的开源...
EJB(Enterprise JavaBeans)是Java EE平台中的核心组件,用于...通过接口定义、EJB实现、JNDI查找和客户端调用,我们可以构建起可靠的分布式系统。此示例提供了一个简单但实用的起点,帮助开发者理解并实践这一技术。
标题“JNDI调用分布式EJB3 通用接口”意味着我们将探讨如何使用JNDI来查找和调用分布在不同节点上的EJB3组件。EJB3中的一个重要特性是它可以跨网络进行分布,这使得应用程序能够利用多台服务器的资源,提高可伸缩性...
Struts、Spring和EJB3是Java开发中的三个重要框架,它们在企业级应用程序开发中发挥着关键作用。Struts提供了MVC(Model-View-Controller)架构,Spring强化了依赖注入和面向切面编程,而EJB3则是Java EE平台上的...
《精通JSF基于EJB Hibernate Spring整合天发与项目实践》是一本深入讲解Java服务器页面(JavaServer Faces,简称JSF)、企业级JavaBean(Enterprise JavaBeans,简称EJB)、Hibernate对象关系映射(Object-...
标题 "spring with ejb3" 暗示了我们即将探讨的是如何在Spring框架中集成和使用EJB 3(Enterprise JavaBeans 3)技术。EJB 3是Java EE平台的一部分,它提供了用于构建企业级应用的服务和组件模型。Spring则是一个轻...