Struts2环境搭建

0x00 IDEA新建项目

IDEA->New Project->Maven->create from archetype->org.apache.maven.archetypes:maven-archetype-webapp->next
填写name->填写GroupId->填写ArtifactId->next
选择maven版本->next->Finish

新建项目成功,目录如下

--struts2demo
    --src
        --main
            --webapp
                --WEB-INF
                    --web.xml
                --index.jsp
    --pom.xml

0x01 maven添加struts2依赖

maven仓库中找到dependency并添加到pom.xml

<dependency>
  <groupId>org.apache.struts</groupId>
  <artifactId>struts2-core</artifactId>
  <version>2.5</version>
</dependency>

开启IDEA中maven的Enable Auto-Import功能,之后IDEA项目的External Libraries中会又下载下来的Maven依赖

0x02 配置过滤器

<web-app>
  <display-name>Archetype Created Web Application</display-name>
  <filter>
    <filter-name>struts2</filter-name>
    <filter-class>org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter</filter-class>
  </filter>
  <filter-mapping>
    <filter-name>struts2</filter-name>
    <url-pattern>*</url-pattern>
  </filter-mapping>
</web-app>

注意filter-class的配置,在struts-core低版本比如2.2的配置是不一样的

<filter-class>
    org.apache.sturts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
</filter-class>

0x03 配置struts.xml

/WEB-INF/classes目录下新建struts.xml文件,因为maven项目打包的时候,会忽略src目录下的xml配置文件,虽然可以配置,但是不如直接放在/WEB-INF/classes路径下

<struts>
    <package name="demo" extends="struts-default">
        <action name="index">
            <result>index.jsp</result>
        </action>
    </package>
</struts>

0x04 部署

Edit Configuration->+->Tomcat Server->Local->配置Tomcat应用路径
Deployment->+->Artifact->struts2demo:war exploded

启动会自动跳转到目标路径

坚持原创技术分享,您的支持将鼓励我继续创作!