歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux編程 >> Linux編程

Spring MVC與EJB整合

一、企業開發模式

目前javaEE應用的開發方式大致可以分為兩種:一種以Spring、Hibernate等開源框架為基礎即所謂的輕量級JavaEE應用;另一種則以EJB3+JPA為基礎配合一些前端框架如JSF、struts2、SpringMvc等等的經典JavaEE開發模式。由於EJB2.0使用相對比較復雜,目前使用的情況來說很多企業基本上使用的是ssh架構,EJB3.0做了改善之後開始以spring+ejb+jpa的組合方式進行開發。

二、Spring MVC+ejb整合

1.通過工廠的方式

public class EJBFactory
{
 public static Object lookup(String ejbRefName)
      {
      try{
  InitialContext ctx=new InitialContext();
        return ctx.lookup("java:comp/env/"+ejbRefName);
<span > </span> }
      catch(NamingException e)
      {
        e.printStackTrace();
      }
    }
}

2.通過Spring將兩者結合

方法一、通過spring提供的ejb代理對象

<bean id="myComponent"
        class="org.springframework.ejb.access.LocalStatelessSessionProxyFactoryBean">
    <property name="jndiName" value="ejb/myBean"/>
    <property name="businessInterface" value="com.mycom.MyComponent"/>
</bean>
 
<bean id="myController" class="com.mycom.myController">
    <property name="myComponent" ref="myComponent"/>
</bean>

方法二、通過<jee:local-slsb> 或者 <jee:remote-slsb>

<jee:local-slsb id="myComponent" jndi-name="ejb/myBean"
        business-interface="com.mycom.MyComponent"/>
 
<bean id="myController" class="com.mycom.myController">
    <property name="myComponent" ref="myComponent"/>
</bean>

三、總結

不管以哪種方式組合,最根本的還是需要通過jndi去查找相應的ejb,只不過三種方式是在jndi查找的基礎上進行了封裝,如工廠方法是將jdni查找的過程進行了封裝;Spring提供了兩種方法,一個是工廠構造出相應的ejb代理對象,這種方法是spring容器經常使用的一種方法;一種是通過攔截器實現,當有ejb請求是相應的攔截器會將請求傳遞給jndi查找到的ejb。三種方法都可以,只不過相對而言通過spring的方式更有效率更簡單,好多問題spring容器都給我們解決了。

Spring MVC+Spring3+Hibernate4開發環境搭建 http://www.linuxidc.com/Linux/2013-07/87119.htm

Spring MVC整合Freemarker基於注解方式 http://www.linuxidc.com/Linux/2013-02/79660.htm

基於注解的Spring MVC簡單介紹 http://www.linuxidc.com/Linux/2012-02/54896.htm

Spring MVC 框架搭建及詳解 http://www.linuxidc.com/Linux/2012-01/52740.htm

Copyright © Linux教程網 All Rights Reserved