1、在pom.xml文件中加入struts2 core 的maven路径,然后自动引入jar包到External Libriries中:
<dependency>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-core</artifactId>
<version>2.5.14.1</version>
</dependency>
2、配置web.xml文件中struts2的过滤器:
<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>*.action</url-pattern>
<dispatcher>REQUEST</dispatcher>
<dispatcher>FORWARD</dispatcher>
</filter-mapping>
2.4版本的servlet规范在部属描述符中新增加了一个<dispatcher>元素,这个元素有四个可能的值:即REQUEST,FORWARD,INCLUDE和ERROR,可以在一个<filter-mapping>元素中加入任意数目的<dispatcher>,使得filter将会作用于直接从客户端过来的request,通过forward过来的request,通过include过来的request和通过<error-page>过来的request。如果没有指定任何< dispatcher >元素,默认值是REQUEST。
3、在resources文件夹中创建struts.xml文件:
<struts>
<!--指定web应用的默认编码集,相当于调用HttpServletRequest的setCharacterEncoding的方法 -->
<constant name="struts.i18n.encoding" value="UTF-8"/>
<!--设置文件上传大小,最大不超过4800M,很对-->
<constant name="struts.multipart.maxSize" value="5000000000"/>
<!--设置spring是否总是以自动装配策略创建对象,只有引入spring插件后才有效。-->
<constant name="struts.objectFactory.spring.autoWire.alwaysRespect" value="true"/>
<!-- 自动动态方法的调用,使用这个设置后可以这样调用:action!method -->
<constant name="struts.enable.DynamicMethodInvocation" value="true"/>
<!-- 把它设置为开发模式,发布时要设置为false -->
<constant name="struts.devMode" value="true" />
</struts>
4、在main文件夹下创建java文件夹,并在java文件夹下创建包名(包名需要按照功能模块进行划分),我创建的是com.cxx.maven.cxx.action.base,并在该包下创建LoginAction类,该类继承ActionSupport类,并重写execute()方法,代码如下(这里先写简要代码,后期会根据功能的完善逐步完善代码):
package com.cxx.mavenssm.action.base;
import com.opensymphony.xwork2.ActionSupport;
public class LoginAction extends ActionSupport {
public String execute(){
return "login";
}
}
5、在struts.xml文件中加入如下代码:
<package name="defult" extends="struts-default">
<action name="loginAction" class="com.cxx.mavenssm.action.base.LoginAction">
<result name="login">/WEB-INF/frame/login.jsp</result>
</action>
</package>
注意:
package节点