用户验证登录拦截器

 
  
  1. public class UserInterceptor extends AbstractInterceptor {
  2. @Override
  3. public String intercept(ActionInvocation invocation) throws Exception {
  4. // 得到当前执行的方法
  5. String methodName = invocation.getProxy().getMethod();
  6. // 得到ActionContext对象
  7. ActionContext ac = invocation.getInvocationContext();
  8. // 获取session, 从session中获取登陆的管理员账号
  9. Object obj = ac.getSession().get("adminInfo");
  10. // 判断:
  11. if (!"login".equals(methodName) && !"list".equals(methodName)){
  12. // 验证
  13. if (obj == null){
  14. // 没有登陆
  15. return "login";
  16. } else {
  17. // 执行Action
  18. return invocation.invoke();
  19. }
  20. } else {
  21. // 允许访问登陆、列表展示
  22. return invocation.invoke();
  23. }
  24. }
  25. }
 
   
  1. <!-- 拦截器配置 -->
  2. <interceptors>
  3. <interceptor name="userInterceptor" class="cn.itcast.action.UserInterceptor"></interceptor>
  4. <interceptor-stack name="myStack">
  5. <interceptor-ref name="defaultStack"></interceptor-ref>
  6. <interceptor-ref name="userInterceptor"></interceptor-ref>
  7. </interceptor-stack>
  8. </interceptors>
  9. <!-- 执行指定的拦截器 -->
  10. <default-interceptor-ref name="myStack"></default-interceptor-ref>





转载于:https://www.cnblogs.com/jarl/p/5893033.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值