首页 > 编程语言 > 详细

spring 整合struts

时间:2017-09-27 00:30:01      阅读:404      评论:0      收藏:0      [点我收藏+]

1.例子:未被spring整合

struts.xml 的配置文件

    <constant name="struts.enable.DynamicMethodInvocation" value="true" />
    <constant name="struts.configuration.xml.reload" value="true"/>
    <!--配置扩展名 .do-->
    <constant name="struts.action.extension" value="do"></constant>

    <package name="default" namespace="/" extends="struts-default">
<!-- {1} 代表第一个*  {2} 代表第二个*   -->
        <action name="*_*" class="com.test.controller.{1}Action" method="{2}">
            <result name="success">index.jsp</result>
        </action>
    </package>

技术分享

注意这个配置,全类名。 struts 通过actionMaping 的配置找到这个类

测试:调用com.test.controller 包下的StudentAction 这个类的doGetStudentInfo()方法

前台调用这个action的方式  就是

技术分享

注意:这里是Student首字母大写,是StudentAction 的前半部分

 

2. 例子:spring整合之后

struts.xml 的配置文件

<struts>
<!--由spring 取代struts 创建对象的实例 -->
    <constant name="struts.objectFactory" value="spring" />
    <!--配置spring自动装配实例-->
    <constant name="struts.objectFactory.spring.autoWire" value="true"></constant> 
    <constant name="struts.enable.DynamicMethodInvocation" value="true" />
    <constant name="struts.configuration.xml.reload" value="true"/>
    <!--配置扩展名 .do-->
    <constant name="struts.action.extension" value="do"></constant>

    <package name="default" namespace="/" extends="struts-default">

        <action name="*_*" class="{1}Action" method="{2}">
            <result name="success">index.jsp</result>
        </action>
    </package>

    <!-- <include file="example.xml"/> -->

</struts>

技术分享

注意这个地方:已经变成了spring 自动创建的beanid,这里自动创建的beanid 是通过注解生成的

技术分享  

这个注解生成的beanid 是studentAction  ,注意这里的首字母是小写,这是spring创建实例的时候转化的。

测试:前台进行访问

 

技术分享

报错:原因,时候应为这时候要调用的action 实例名已经是studenAction 而不是StudentAction

 

技术分享

正确。

此时spring配置文件不用特别的设置配置,已经将spring 和 struts 整合完毕

 

spring 整合struts

原文:http://www.cnblogs.com/blogxiao/p/7599647.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!