Maven搭建Struts2开发环境并整合Spring3

前面搭建Spring3环境,这篇搭建Struts2开发环境并整合Spring3。

  1. 下载Struts2需要的jar包
    1.strtus2-core
    2.struts2-spring-plugin(struts2和Spring整合时需要使用到的插件)
    3.struts2-convention-plugin(使用了这个插件之后,就可以采用注解的方式配置Struts的Action,免去了在struts.xml中的繁琐配置项)
    4.struts2-config-browser-plugin(config-browser-plugin插件不是必须的,但是使用了这个插件之后,就可以很方便的浏览项目中的所有action及其与 jsp view的映射)

在pom.xml文件中编写Struts2所需要的jar包,Maven会自动下载这些包:


        <dependency>
            <groupId>org.apache.strutsgroupId>
            <artifactId>struts2-coreartifactId>
            <version>2.3.16version>
            
        dependency>
        
        <dependency>
            <groupId>org.apache.strutsgroupId>
            <artifactId>struts2-convention-pluginartifactId>
            <version>2.3.20version>
        dependency>
        
        <dependency>
            <groupId>org.apache.strutsgroupId>
            <artifactId>struts2-config-browser-pluginartifactId>
            <version>2.3.20version>
        dependency>
        
        <dependency>
            <groupId>org.apache.strutsgroupId>
            <artifactId>struts2-spring-pluginartifactId>
            <version>2.3.4.1version>
        dependency>

Maven搭建Struts2开发环境并整合Spring3_第1张图片

2.编写Struts.xml配置文件
Maven搭建Struts2开发环境并整合Spring3_第2张图片

内容编写:



<struts>

    
    <constant name="struts.objectFactory" value="spring" />
    
    <constant name="struts.action.extension" value="action" />
    
    <constant name="struts.devMode" value="true" />
    
    <constant name="struts.configuration.xml.reload" value="true" />
    
    <constant name="struts.serve.static.browserCache" value="false" />
    
    <constant name="struts.i18n.encoding" value="utf-8" />
    
    <constant name="struts.i18n.reload" value="true" />
    
    <constant name="struts.multipart.maxSize" value="104857600" />
    
    <constant name="struts.enable.DynamicMethodInvocation" value="true" />
    
    <constant name="struts.enable.SlashesInActionNames" value="false" />
    
    <constant name="struts.tag.altSyntax" value="true" />
    
    <constant name="struts.dispatcher.parametersWorkaround" value="false" />

    <package name="basePackage" extends="struts-default">
    package>

struts>

3.在web.xml中配置Struts2的过滤器

   
    <filter>
        <filter-name>struts2filter-name>
        <filter-class>
            org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
        filter-class>
  
      filter>
      <filter-mapping>
        <filter-name>struts2filter-name>
        <url-pattern>/*url-pattern>
      filter-mapping>

4.编写测试类
Maven搭建Struts2开发环境并整合Spring3_第3张图片
内容:

package sy.action;


import org.apache.struts2.convention.annotation.Action;
import org.apache.struts2.convention.annotation.Namespace;
import org.apache.struts2.convention.annotation.ParentPackage;
import org.springframework.beans.factory.annotation.Autowired;

import sy.service.UserserviceI;

@ParentPackage("basePackage")
@Action(value="testAction")//使用convention-plugin插件提供的@Action注解将一个普通java类标注为一个可以处理用户请求的Action,Action的名字为struts2Test
@Namespace("/")//使用convention-plugin插件提供的@Namespace注解为这个Action指定一个命名空间
public class TestAction {

    /**
     * 注入userService
     */
    @Autowired
    private UserserviceI userService;

    /**
     * http://localhost:8080/mavenblog/testAction!test.action
     */
    public void test(){
        System.out.println("进入TestAction");
        userService.test1();
    }
}

这里使用@Autowired注解将userService注入到UserAction中。

测试Struts2的开发环境是否搭建成功,先执行【Maven install】操作,然后部署到tomcat服务器,最后启动tomcat服务器运行,

输入访问地址:http://localhost:8080/mavenblog/testAction!test.action,访问结果如下:

Maven搭建Struts2开发环境并整合Spring3_第4张图片

控制台输出如下:

这里写图片描述

测试通过,Struts2的开发环境搭建并整合Spring成功!

你可能感兴趣的:(Maven搭建Struts2开发环境并整合Spring3)