需求:制作一个网站需要用户登陆后才能查看,即一个权限的问题

  1.首先明确在用户没登陆前有两个Action请求是可以通过的,即注册和登陆。

  2.创建拦截器,如UserLoginInterceptor.java,如下

public class UserLoginInterceptor extends AbstractInterceptor {@Overridepublic String intercept(ActionInvocation arg0) throws Exception {Action action = (Action) arg0.getAction() ;//放行这两种Action请求if(action instanceof RegisterAction||action instanceof LoginAction){return arg0.invoke() ;}else{//获取session有没有用户?User user = (User) arg0.getInvocationContext().getSession().get("user") ;if(user==null){//若没有,则想页面传达错误的消息arg0.getInvocationContext().getSession().put("noLand", "您没有权限,请先注册或登录!");return "input" ;}else{//若有则放行return arg0.invoke() ;}}}}

  3.拦截器写好后要在struts.xml中配置

     <interceptors><!-- 配置已写好的拦截器 --><interceptor name="userLogin" class="com.blog.interceptor.UserLoginInterceptor"/><!-- 定义自己的拦截器栈,由struts2自己的拦截器栈和前面的拦截器组成 --><interceptor-stack name="blogStack"><interceptor-ref name="userLogin"/><interceptor-ref name="defaultStack"/></interceptor-stack></interceptors><!-- 将自定义的拦截器栈设为默认栈 --><default-interceptor-ref name="blogStack"/>

  4.在无权限跳转页面上显示session中自己放入的提醒信息。

转载于:https://www.cnblogs.com/hfblogs/p/5347573.html

strust2自定义interceptor的基本方法及操作相关推荐

  1. android sqlite自定义函数,Android中自定义一个View的方法详解

    本文实例讲述了Android中自定义一个View的方法.分享给大家供大家参考,具体如下: Android中自定义View的实现比较简单,无非就是继承父类,然后重载方法,即便如此,在实际编码中难免会遇到 ...

  2. Android自定义View的实现方法,带你一步步深入了解View(四)

    不知不觉中,带你一步步深入了解View系列的文章已经写到第四篇了,回顾一下,我们一共学习了LayoutInflater的原理分析.视图的绘制流程.视图的状态及重绘等知识,算是把View中很多重要的知识 ...

  3. wamp增加php,新版PHPWAMP自定义添加PHP版本方法步骤

    新版PHPWAMP自定义添加PHP版本方法步骤 发布时间:2020-05-08 10:19:50 来源:亿速云 阅读:210 作者:三月 本文主要给大家介绍新版PHPWAMP自定义添加PHP版本方法步 ...

  4. linux关闭桌面快捷键设置,在XFCE4桌面上自定义键盘快捷键的方法

    本文介绍在Linux XFCE4桌面环境上自定义键盘快捷键的方法. 默认键盘快捷键 XFCE4没有像其他Linux桌面环境那样加载许多键盘快捷键,但它确实有很多,这些快捷方式隐藏在桌面设置的" ...

  5. QVariant类及QVariant与自定义数据类型转换的方法

    这个类型相当于是Java里面的Object,它把绝大多数Qt提供的数据类型都封装起来,起到一个数据类型"擦除"的作用.比如我们的 table单元格可以是string,也可以是int ...

  6. 搜狗浏览器安装自定义JS脚本的方法~

                          搜狗浏览器安装自定义JS脚本的方法- 方法1 安装新搜狗浏览器右上常用工具栏,在"工具箱"上点击选"添加". 搜索安 ...

  7. Android中自定义view的onMeasure()方法详谈

    背景 理解MeasureSpec MeasureSpec 情况分析 结合图例分析 总结 A little bit of progress every day!Come on! 背景 首先关于自定义vi ...

  8. 用计算机设计主题色调,Win10个性化颜色怎么设置 自定义Win10主题颜色方法 (全文)...

    Win10个性化颜色怎么设置?本文主要分享一些实用的Win10小技巧,本文主要针对开始菜单背景与主题色颜色设置的问题,虽然设置个性化颜色很简单,但自定义Win10主题颜色可不是每个朋友都会的,下面本文 ...

  9. django认证系统实现自定义权限管理的方法 - python

    文章来源:嗨学网 敏而好学论坛www.piaodoo.com 欢迎大家相互学习 本文记录使用django自带的认证系统实现自定义的权限管理系统,包含组权限.用户权限等实现. 0x01. django认 ...

最新文章

  1. ProGuard的返回错误代码1。异常的解决方法
  2. 2021-01-07 matlab数值分析  矩阵特征值与特征向量的计算 改进乘幂法 反幂法
  3. 电脑下面的任务栏怎么取消隐藏_电脑桌面右下方任务栏的小图标如何隐藏
  4. POJ 2229 Sumsets
  5. python 调用控制台并获取返回结果_Java调用Python脚本并获取返回值
  6. python xml添加命名空间_XML的命名空间与python解析方法
  7. 关于Windowsn 7因验证未通过被视为“非正版”出现“黑屏”的应急处理预案
  8. 电子邮件地址中服务器怎么看,你如何检查电子邮件服务器(gmail)中的某个地址,并基于该地址运行一些东西?...
  9. html全部布局代码大全,HTML 布局(示例代码)
  10. 论文学习——《Affective Computing:A Review》
  11. python 菜鸟联盟快递查询_快递单号查询接口-物流轨迹信息快递鸟api对接教程
  12. reflections歌词翻译_英文歌曲reflection的歌词翻译
  13. wxid 转微信号 如何找到原始id教程
  14. 闽江师范高等专科学校计算机系成立时间,闽江师范高等专科学校2018届毕业典礼...
  15. 更改Windows鼠标滑轮滚动方向
  16. 数据库中查出的树形,获取其所有子孙(递归方式)
  17. 阿里云Apsara Clouder基础技能认证:阿里巴巴编码规范题库(最新题库大全)
  18. 虚拟机的网络改为桥接网络
  19. VS2017 安装 Microsoft Visual Studio Installer Project
  20. jquery官网(jquery下载官网)

热门文章

  1. C语言实现的Web服务器
  2. 明白了这十个故事,你也就参悟了人生
  3. 汇编程序设计与计算机体系结构软件工程师教程笔记:内联汇编与宏
  4. 灰度图像直方图均衡化公式及实现
  5. 解决windows7下vs2008不能正常编译ActiveX控件的问题
  6. 【网络】通讯名词解释:带宽、速率、波特率、奈奎斯特定律、香农定理
  7. 中国大学生创业报告发布
  8. mysql 主从有哪几种模式_mysql 主从模式总结(一)
  9. c语言随机浮点数,C随机浮点数生成
  10. 神舟台式计算机图片,扩展性媲美台式机!神舟战神K780G拆机图赏