struts2拦截器

权限拦截器,只有经过登陆的才可以看到列表页面

登录界面:提交的话找到login路径

struts2拦截器

struts.xml:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
    "http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
<!-- 定义全局拦截器 -->
<package name="MyInterceptors" extends="struts-default">
 
  <interceptors>

    <!-- 权限栏拦截器 -->
    <interceptor name="myInterceptor" class="com.hrxb.utils.MyInterceptor"></interceptor>
     <!-- 自定义拦截器栈 -->
     <interceptor-stack name="myStack">
        <!-- 关联权限拦截器 -->
       <interceptor-ref name="myInterceptor"></interceptor-ref>
         <!-- 加入默认的拦截器栈 -->
       <interceptor-ref name="defaultStack"></interceptor-ref>
     </interceptor-stack>
   
  </interceptors>
   <!-- 默认使用的拦截器栈 -->
<default-interceptor-ref name="myStack"></default-interceptor-ref>
   <!-- 定义全局返回结果 -->
  <global-results>
    <!-- 如果没有登录则转发到登录页面 -->
   <result name="noLogin">login.jsp</result>
  </global-results>
</package>
  <!-- 模块 -->
  <package name="user" extends="MyInterceptors" >
     <!-- name:映射URL -->
    <!-- * 匹配所有   {1} 取第一个*的值 -->
             <!-- user_add -->
    <action name="user_*" class="userAction" method="{1}">
        <!-- 返回结果 跳转页面 -->
       <result name="list">/WEB-INF/jsp/userList.jsp</result>
       <result name="toAdd">/WEB-INF/jsp/userAdd.jsp</result>
       <!-- 修改 -->
       <result name="toUpdate">/WEB-INF/jsp/userUpdate.jsp</result>
         <!-- 修改\删除、增加 成功后重定向到查询的action -->
       <result name="success" type="redirectAction">user_findAll</result>
    </action>
 
    
 
  </package>
<constant name="struts.custom.i18n.resources" value="fileupMessage"></constant>
<package name="fileUp" extends="struts-default">
 
  <action name="fileUpload" class="fileUpAction" method="fileUpload">
    <param name="savePath">/upload/</param>
   <!-- 使用文件上传拦截器 -->
   <interceptor-ref name="fileUpload">
    <!-- 允许上传文件的扩展名 -->
     <param name="allowedExtensions">jpg,jpeg,gif</param>
     <!-- 允许文件上传的大小 -->
     <param name="maximumSize">1024*1024*10</param>
   
   </interceptor-ref>
    <!-- 继续执行后续拦截器 -->
   <interceptor-ref name="defaultStack"></interceptor-ref>
    
    <!-- 文件上传成功 -->
    <result name="success">/WEB-INF/jsp/success.jsp</result>
    <!-- 文件上传失败 -->
    <result name="input">fileup.jsp</result>
  </action>


</package>

  <!-- 登录 -->
  <package name="loginAndLogout" extends="MyInterceptors">
   <action name="login" class="loginAction" method="login">
        <!-- 登录成功 -->
       <result name="success" type="redirectAction" >user_findAll</result>
       <!-- 登录失败 -->
       <result name="error" >login.jsp</result>

   </action>


     <!-- 退出系统 -->
     <action name="logout" class="logoutAction" method="logout">
         <result name="success">login.jsp</result>
     </action>
</package>
</struts>


Action:

struts2拦截器


在utils里自定义拦截器

struts2拦截器


struts2拦截器