现在的位置: 首页 > 综合 > 正文

关于Struts、Spring和Hibernate整合的问题

2018年07月28日 ⁄ 综合 ⁄ 共 890字 ⁄ 字号 评论关闭

      好多好多网友,包括我自己在整合Struts 1.2、Spring和Hibernate的时候,会经常出错,爆出404错误,问题何在?
对三者的整合的时候,方法概有三种:
1.写一个BaseAction extends Action,在里面手工获取bean,而不是采用注入的,其他Action都继承此类。此方法易懂,但是Struts并没有交给Spring托管,也就是说Struts不在Spring的控制之内。
2.采用自动装载的方法,在web.xml中配置插件以及监听器,不多说了。
3.采用委托代理的Action的方法,此方法是最常见的方法,就详细说一下了。
即所有的action中的type的属性为org.springframework.web.struts.DelegatingActionProxy

<action path="/login" name="loginForm"
     type="org.springframework.web.struts.DelegatingActionProxy"
     input="/login.jsp"
     validate="false">
</action> 
再加入下面的代码
<plug-in className="org.springframework.web.struts.ContextLoaderPlugIn">
    <set-property property="contextConfigLocation" value="/WEB-INF/classes/applicationContext.xml"/>
</plug-in>

在applicationContext.xml配置
<bean name="/login" class="原来的Action类"  scope="prototype"/>

如果你用myeclipse加入的话,为了防止包的问题最好按这个次序加:先spring ,接着hibernate,最后struts
一般情况下,出错的原因是利用myeclipse开发时,jar包发生冲突。特别是由myeclipse自动导入的jar包。

抱歉!评论已关闭.