web.xml配置:
<!-- Struts2核心过滤器配置 -->
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
struts.xml配置(根据需要配置):
<struts>
<!-- 配置国际化资源文件(上传信息提示) -->
<constant name="struts.custom.i18n.resources" value="app"></constant>
<package name="default" namespace="/" extends="struts-default">
<!-- 注册拦截器 -->
<interceptors>
<interceptor name="timerInterceptor"
class="com.struts2.interceptor.TimerInterceptor"></interceptor>
<interceptor name="userInterceptor"
class="com.struts2.interceptor.UserInterceptor"></interceptor>
</interceptors>
<!-- 配置action -->
<action name="helloworld" class="com.struts2.action.HelloWorldAction">
<result name="success">/jsp/success.jsp</result>
<result name="login">/index.jsp</result>
<!-- 引入拦截器 -->
<interceptor-ref name="defaultStack" />
<interceptor-ref name="userInterceptor"></interceptor-ref>
</action>
<action name="timer" class="com.struts2.action.TimerAction">
<result name="success">/jsp/success.jsp</result>
<result name="login">/index.jsp</result>
<!-- 引入拦截器 -->
<interceptor-ref name="defaultStack" />
<interceptor-ref name="timerInterceptor"></interceptor-ref>
<interceptor-ref name="userInterceptor"></interceptor-ref>
</action>
<action name="user_*" method="{1}" class="com.struts2.action.UserAction">
<result name="success">/jsp/success.jsp</result>
<result name="error">/index.jsp</result>
</action>
<!-- 文件上传 -->
<action name="upload_*" method="{1}"
class="com.struts2.action.FileUploadAction">
<result name="use">/jsp/upload.jsp</result>
<result name="success">/jsp/upload.jsp</result>
<result name="input">/jsp/uploadError.jsp</result>
<result name="login">/index.jsp</result>
<!-- 引入拦截器 (配置文件上传的类型及大小)(注意:先引入fileUpload,后引入defaultStack) -->
<interceptor-ref name="fileUpload">
<!--<param name="allowedTypes">image/bmp,image/x-png,image/gif,image/jpeg</param>-->
<param name="maximumSize">2M</param>
</interceptor-ref>
<interceptor-ref name="defaultStack" />
<interceptor-ref name="userInterceptor"></interceptor-ref>
</action>
<!-- 文件下载 -->
<action name="download" class="com.struts2.action.FileDownloadAction">
<param name="inputPath">/images/img6-lg.jpg</param>
<result name="success" type="stream">
<param name="contentType">application/octet-stream</param>
<param name="contentDisposition">attachment;fileName="${downloadFileName}"</param>
<param name="bufferSize">8192</param>
<param name="inputName">inputStream</param>
</result>
</action>
</package>
</struts>
编写 action:
编写 拦截器: