struts 自身也有个ioc容器,(也可以说是个objectFactory,这点看他们的整合配置就明白了)他把客户端传上来的东西注入到action里因为现在的设计理念多是解耦合,或是真正的送耦合,所以还会把程序进行分层大致分为数据访问层(DAO)--业务层--表示层(action)其实个人任务struts跟spring整合的重点就是在管理业务层跟表示层的bean,并在使用时候进行注入而hibernate跟spring 的整合重点在数据访问层跟业务层的管理,而且还有事务的管理等等Spring的ioc容器其实就是个大工厂,不知道lz对工厂模式理解的怎么样,明白这个就明白项目中用spring ioc容器的好处了,当然还有他aop

解决方案 »

  1.   

    使用spring作为核心控制器  如可作为对象工厂(代替struts生成类对象),依赖注入(代替在action中实例化javabean)好处就是:完全由配置文件控制,完全不涉及到业务代码,可重用性大大提高如:
    你原来的系统的持久层是hibernate,现在要换成ibatis,
    (假设系统原来就提供数据库接口的servise类) 
    只需要改动相关配置文件即可,而如果不用spring,相关处理数据库的类全部需要重写而struts的作用 在这里主要就是与页面相关联了 
    如:从页面取值 向页面传值 包括使用struts简化jsp的开发主要就是这些吧 个人理解 楼主再看些官方文档 理解一下
      

  2.   

    如果是struts2
    1.配置一个监听
    <listener>
            <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    </listener><!-- 配置Struts 2框架的核心Filter -->
    <filter>
    <!-- 配置Struts 2核心Filter的名字 -->
    <filter-name>struts</filter-name>
    <!-- 配置Struts 2核心Filter的实现类 -->
    <filter-class>org.apache.struts2.dispatcher.FilterDispatcher </filter-class>
    </filter>   
    <!-- 配置Filter拦截的URL -->
    <filter-mapping>
    <!-- 配置Struts 2的核心FilterDispatcher拦截所有用户请求 -->
    <filter-name>struts</filter-name>
    <url-pattern>/*</url-pattern>
    </filter-mapping> 
    <!-- 手动配置Struts 2的标签库 -->
    <taglib>
    <!-- 配置Struts 2标签库的URI -->
    <taglib-uri>/s</taglib-uri>
    <!-- 指定Struts 2标签库定义文件的位置 -->
    <taglib-location>/WEB-INF/struts-tags.tld</taglib-location>
    </taglib>    
    2.
    然后还要配置
    在struts.properties中设置struts.objectFactory属性值struts.objectFactory = spring 
    或者是在XML文件中进行常量配置struts.xml
        <struts>
            <constant name="struts.objectFactory" value="spring" />
        </struts>3.里面还有很多小的细节,这个是最基本的。
    希望对你有些帮助。
      

  3.   

    这是一篇 sturts2+spring2 整合入门的的文章,希望对你有所帮助http://www.blogjava.net/pdw2009/archive/2007/10/24/155648.html
      

  4.   

    struts主要是用来进行前台页面的现实。而Spring有一个IoC容器。可以将Struts的配制文件。配制到Spring的IoC容器里面。这样Spring扮演一个控制器的角色。