Spring整合Struts2

Spring整合Struts2需要导入struts2-spring-plugin.jar文件。
导入完成之后,struts2的所有类文件的初始化都交由spring容器管理。
例如:
在不使用spring之前,我们是这样配置struts2.xml文件的。

struts.xml
...

        
            index.jsp
        

此时com.sun.TestAction类是由Struts2帮我们创建的。当我们使用Spring之后,需要将Action类的初始化工作转交给Spring,因此我们需要配置applicationContext.xml声明这些action对象。

applicationContext.xml
...

struts.xml
...

        
            index.jsp
        

当我们配置完spring.xml文件启动项目时,spring会自动将com.sun.TestAction放到容器中管理,注意此时action类的scope属性为prototype,因为struts2的每一次请求都会新建一个action进行处理。此时我们的struts.xml文件中对应class属性应该改为spring为我们配置好的,已经在容器中存在的testAction对象,不需要再由struts自己创建对象。

web.xml
...
    
    
        contextConfigLocation
        classpath:applicationContext.xml
    

    
    
        org.springframework.web.context.ContextLoaderListener
    

    
    
        struts2
        org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter
    
    
        struts2
        /*
    

你可能感兴趣的:(Spring整合Struts2)