filter过滤器实现验证跳转_返回验证结果

1. 需求背景

需要对某个请求url进行拦截,模拟是否可以进入某一个接口,如果拦截需要返回数据false,别问我为何不用intercept拦截器。

2. web.xml

<filter>    <filter-name>restfulFilter</filter-name>    <filter-class>com.jeenotes.utils.filter.RestfulFilter</filter-class> 过滤器路径   
</filter>    <filter-mapping>    <filter-name>restfulFilter</filter-name>    <url-pattern>/aaa/*</url-pattern>  aaa表示拦截的url,如果你想拦截所有,直接/*即可。   
</filter-mapping> 

 

3. 自定义的Filter

 public class RestfulFilter implements Filter {   

private AAAService aaaService;@Overridepublic void init(FilterConfig filterConfig) throws ServletException {}@Overridepublic void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)throws IOException, ServletException {
     //由于filter 优先级要高,所以直接@Autowired引入service是不存在的
//如下是HttpServletRequest req = (HttpServletRequest)request;HttpServletResponse resp = (HttpServletResponse)response;ServletContext sc = req.getSession().getServletContext();
//如下是创建service过程XmlWebApplicationContext cxt = (XmlWebApplicationContext)WebApplicationContextUtils.getWebApplicationContext(sc);//aaaServiceImpl 是aaaService实现类if(cxt != null && cxt.getBean("aaaServiceImpl") != null && aaaService == null)aaaService = (AAAService) cxt.getBean("aaaServiceImpl");//此处是逻辑
if(成功){chain.doFilter(request, response); //进入请求的url}else{req.getRequestDispatcher("/xxx某某url").forward(request,response);//跳转自己指定的url}}@Overridepublic void destroy() {}}

要跳转的/xxx某某url

@RequestMapping(value = "/getEntranceStatus", method = RequestMethod.GET, produces = "text/html;charset=UTF-8")public String getEntranceStatus(HttpServletRequest request){//此处就是返回一个false}

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/414754.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

学习基础和C语言基础调查

一.你有什么技能比大多人&#xff08;超过90%以上&#xff09;更好&#xff1f; 答&#xff1a;回答这个问题之前应该加上“我觉得”三个字&#xff1b;其实我没什么太多太实用的技能&#xff0c;无非就是一些特别的、没什么新鲜有意义的技能&#xff0c;比如说我觉得有一些不太…

前端学习(2730):重读vue电商网站40之使用vue-table-with-tree-grid

安装新的依赖 vue-tabel-with-tree-gridvue-tabel-with-tree-grid 官方文档 安装完成后&#xff0c;在 main.js 入口文件内先导入 tree-tabel 然后全局注册组件 tree-tabel 页面中&#xff0c;我们使用了如下属性&#xff1a; data 确定我们的数据源&#xff0c;columns定义我…

年终个人工作总结

这里有25篇个人年终总结&#xff0c;涵盖各行各业 http://www.duanmeiwen.com/zongjie/fanwen/46847.html https://wenku.baidu.com/view/9cddf7653069a45177232f60ddccda38376be180.html https://jz.docin.com/p-322307149.html

腾讯TBS加载网页无法自适应记录

1. 所遇到的问题 webview加载指定网页无法实现自适应&#xff0c;之前在加载重构一个网页的时候&#xff0c;其实也遇到这种问题&#xff0c;然后就有了下面的一下步骤 WebSettings webSettings view.getSettings(); webSettings.setJavaScriptEnabled(true); // settings…

前端学习(2731):重读vue电商网站41之自定义格式化时间的全局过滤器

在 main.js 入口文件全局注册格式化时间的过滤器&#xff0c;代码如下所示&#xff1a; Javascript // 自定义格式化时间的全局过滤器 Vue.filter(dataFormat, function(originVal) {const dt new Date(originVal)const year dt.getFullYear()const mon (dt.getMonth() 1 …

sign check fail: check Sign and Data Fail

支付宝开发报错&#xff1a;com.alipay.api.AlipayApiException: sign check fail: check Sign and Data Fail 解决方法&#xff1a; 确认使用的支付宝公钥是否正确&#xff0c;不同的环境使用的支付宝公钥不同&#xff0c; 如沙箱环境、线上openapi网关和mapi网关对应的支付…

TensorFlow学习笔记(1):variable与get_variable, name_scope()和variable_scope()

Variable tensorflow中有两个关于variable的op&#xff0c;tf.Variable()与tf.get_variable()下面介绍这两个的区别 使用tf.Variable时&#xff0c;如果检测到命名冲突&#xff0c;系统会自己处理。使用tf.get_variable()时&#xff0c;系统不会处理冲突&#xff0c;而会报错 i…

前端学习(2732):重读vue电商网站42之添加富文本编辑器

vue-quill-editor 官方文档传送门 通过 vue-ui 界面&#xff0c;可以安装我们所需要的依赖&#xff0c;或者使用下文 npm 或 yarn安装。 NPM Js npm install vue-quill-editor --save# or yarn add vue-quill-editorMount with global Js import Vue from vue import VueQui…

1、Flutter_初体验_创建第一个应用_AndroidStudio_windows

1.前言 至于 Flutter 是啥&#xff0c;我就不在这啰嗦了&#xff0c;下面以 windows 为例&#xff0c;展示一下从安装 Flutter 到运行 APP 整个过程&#xff1b; 2.安装 Flutter 2.1、中文介绍文档&#xff1a;https://flutterchina.club/get-started/install/ &#xff08;我的…

jquery.min.js一引入到工程中显示红叉,或其他.js文件显示红叉

1.可能的原因&#xff1a; Eclipse或者MyEclipse校验失败的错误&#xff0c;不影响程序正常执行 2.解决方案&#xff1a; 选择项目&#xff0c;右键 Myeclipse--> ManaValidation--> ExcludeResource 将出现问题的js前的复选框选中。点击“应用” “确定”。如果以上…

【JEECG技术文档】Online唯一校验使用说明

1、功能介绍 配置了唯一校验的字段&#xff0c;在录入和编辑页面中&#xff0c;动态查询用户输入值是否存在校验。 要使用online唯一校验功能必须先在online表单开发中配置唯一字段的校验方式为唯一校验。 2、配置唯一校验 登录系统&#xff0c;在线开发-online表单开发&#x…

026_lsof命令经验总结

一、lsof处理删除文件未释放句柄问题. 但是如果你不知道是哪个文件&#xff0c;或者是很多文件都有这样的情况&#xff0c;那你需要使用如下命令 lsof |grep deleted 注:这个deleted表示该已经删除了的文件&#xff0c;但是文件句柄未释放,这个命令会把所有的未释放文件句柄…

错误记录--更改tomcat端口号方法,Several ports (8005, 8080, 8009)

启动Tomcat服务器报错&#xff1a; Several ports (8005, 8080, 8009) required by Tomcat v5.5 Server at localhost are already in use. The server may already be running in another process, or a system process may be using the port. To start this server you wil…

eclipse 安装 lombok插件

下载插件 官网下载 &#xff1a;https://projectlombok.org/ 有些小伙伴官网可能打不开&#xff0c;现提供我的下载地址&#xff1a;https://files.cnblogs.com/files/niceyoo/lombok.zip 安装 lombok 插件 1、右键打开 2、选择 eclipse.exe > install 博客地址&#xff1a;…

关于 spring MVC 配置自动扫描中 use-default-filters 属性

1、springMVC 设置扫描 Bean 的两种常见写法 1.1、先看第一种常见的配置&#xff1a;默认 <!-- 配置Controller扫描 --> <context:component-scan base-package"com.jeenotes.ssm" /> 1.2、第二种&#xff0c;自定义&#xff0c;只扫描 control <!-- …

C语言的基本构成

C语言的基本构成 知识点&#xff1a;C语言的注释&#xff1b;关键字&#xff1b;书写风格&#xff1b;常量和变量 重要程度&#xff1a;★★★★ 1、C语言的良好风格 用C语言编写的程序&#xff0c;称为C语言源程序&#xff0c;简称C程序。 本节将通过一个简单的C程序例子&…

Android.View.InflateException: Binary XML File Line #异常的解决

这个运行错误&#xff0c;主要出现在安卓系统5.0一下手机系统。在5.0以上手机系统&#xff0c;不会出现这个错误 错误如下&#xff1a;在引入自定义VIEW时报错 原因&#xff1a;资源文件shape_new_message.xml在drawable-v24文件夹下&#xff0c;而不在drawable文件夹下 解决…

shiro 角色与权限的解读

1、为什么 shiro 有了《角色》后&#xff0c;还要设置《角色权限》呢&#xff1f;&#xff08;问题&#xff09; 思考&#xff1a;设置好角色了&#xff0c;那么就代表什么操作都可以执行了吗&#xff1f; 理解&#xff1a;如果上边回答是的话&#xff0c;那么只是《角色》层次…