【Spring MVC 中 HandlerInterceptorAdapter的使用】
接到这样一个需求:现有项目X,在我方的服务器A和客户的服务器B上均有部署。用户之前都是访问的A,现在要求所有用户的请求都转发到服务器B上去。考虑到用户可能保存了很多不同的网址(不止是主页网址),现写一个拦截器,把指向A服务器IP的请求都转发到B上去。代码如下:
拦截器代码:
package com.yiji.ifp.web.common.interceptor;import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.web.servlet.handler.HandlerInterceptorAdapter;import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse;/*** @Description 使所有的請求都跳轉到指定頁面* @Author Created by shusheng.* @Email shusheng@xxx.com* @Date 2017/10/31*/ public class HostRedirectInterceptor extends HandlerInterceptorAdapter {protected final Logger logger = LoggerFactory.getLogger(getClass());@Overridepublic boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler)throws Exception {String hostFromRequest = request.getLocalAddr();logger.info("用戶請求的主機地址:{}", hostFromRequest);String requestURL = request.getRequestURI();logger.info("客户端发出请求时的完整URL:{}",requestURL);String requestURI = request.getRequestURI();logger.info("请求行中的资源名部分:{}",requestURI);String hostTo = "http://59.51.9.109:8081/";String urlTo = "/ifp/common/redirectionwindow.html";if(!(requestURL.equals(urlTo)||"/".equals(requestURL))){logger.info("用戶請求的服務器地址不是新地址,将转发请求到服务器跳转页");response.sendRedirect(urlTo);logger.info("重定向完成");return false;}return true;}}
配置代码:
<mvc:interceptors><bean id="hostRedirectInterceptor" class="com.xxx.xxx.web.common.interceptor.HostRedirectInterceptor" /></mvc:interceptors>
转载于:https://www.cnblogs.com/zuixinxian/p/7793220.html
【Spring MVC 中 HandlerInterceptorAdapter的使用】相关推荐
- Spring MVC 中 HandlerInterceptorAdapter的使用--转载
原文地址:http://blog.csdn.net/liuwenbo0920/article/details/7283757 一般情况下,对来自浏览器的请求的拦截,是利用Filter实现的,这种方式可 ...
- Spring MVC 中 HandlerInterceptorAdapter的使用(拦截器)
一般情况下,对来自浏览器的请求的拦截,是利用Filter实现的,这种方式可以实现Bean预处理.后处理. Spring MVC的拦截器不仅可实现Filter的所有功能,还可以更精确的控制拦截精度. ...
- Spring MVC 中 HandlerInterceptorAdapter过滤器的使用
一般情况下,对来自浏览器的请求的拦截,是利用Filter实现的,这种方式可以实现Bean预处理.后处理. Spring MVC的拦截器不仅可实现Filter的所有功能,还可以更精确的控制拦截精度. ...
- Spring MVC 中 HandlerInterceptorAdapter的使用
一般情况下,对来自浏览器的请求的拦截,是利用Filter实现的,这种方式可以实现Bean预处理.后处理. Spring MVC的拦截器不仅可实现Filter的所有功能,还可以更精确的控制拦截精度. s ...
- Spring MVC 中 HandlerInterceptorAdapter的使用 预处理、后处理、返回处理
一般情况下,对来自浏览器的请求的拦截,是利用Filter实现的,这种方式可以实现Bean预处理.后处理. Spring MVC的拦截器不仅可实现Filter的所有功能,还可以更精确的控制拦截精度. S ...
- spring mvc中的拦截器
本文说下spring MVC中的拦截器 文章目录 拦截器介绍 拦截器注入适配器 自定义拦截器 controller测试 测试结果 本文小结 拦截器介绍 拦截器是在servlet执行之前执行的程序(这里 ...
- spring mvc中实现csrf安全防御简记
1.csrf是什么 csrf全称是Cross-site request forgery,http://en.wikipedia.org/wiki/Csrf 危害:使受害用户在不经意间执行了不是用户意愿 ...
- 彻底解决Spring mvc中时间的转换和序列化等问题
彻底解决Spring mvc中时间的转换和序列化等问题 参考文章: (1)彻底解决Spring mvc中时间的转换和序列化等问题 (2)https://www.cnblogs.com/childkin ...
- spring mvc中的@propertysource
在spring mvc中,在配置文件中的东西,可以在java代码中通过注解进行读取了: @PropertySource 在spring 3.1中开始引入 比如有配置文件 config.propert ...
最新文章
- Http client 请求
- JAVA子类是球父类是圆_java的父类和子类,这是矛盾...
- 导入一个android项目需要改什么意思,导入别人的Android Studio项目前要修改的文件...
- php函数(检查变量、函数、键是否存在)
- gcc 安装在服务器的问题总结
- horizon服务主要模块_Openstack入门篇(十四)之horizon服务的部署与测试
- linux 设置端口常用命令
- 一个小技巧让你轻松处理Selenium处理滚动条和元素聚焦
- java窗口小程序atm_简单的小程序实现ATM机操作
- com口驱动_四足机器人FOC驱动器篇1:Odrive Moco接口板套件介绍
- Atitit.编程语言and 自然语言的比较and 编程语言未来的发展
- android进阶(三)数据存储之Internal Storage
- 统计学基础知识有哪些?看这一篇就够了
- 怎么在服务器上搭建网站(搭建服务器需要什么)
- 最新时空观测结果证实爱因斯坦相对论合理性
- windows远程桌面自动切换到360安全登录界面
- 禁止div被拖动 css,【Web前端问题】div在拖动时出现禁止图标
- 【openjudge】抓住那头牛
- [转]老师几乎气绝身亡,搞笑....
- 能力提升的僵化、优化、固化过程
热门文章
- android 8 esp8266,微信硬件平台(八) 1 esp8266从自己的服务器获取token
- python c 混合编程 用c循环_混合编程:用 C 语言来扩展 Python 大法吧!
- linux内核配置参考,[转]Linux内核配置选项 参考(3)
- 【若依(ruoyi)】打开新的选项卡
- 激光振镜误差校正算法C语言,动态聚焦激光振镜扫描系统的误差分析及图形校正算法.pdf...
- java 铺地板问题_铺木地板的5大注意事项,我家接连踩坑接近“崩溃”,大家别再犯...
- jq 自动打开浏览器_jQuery之解析判断当前页面打开端(APP或浏览器)的方法
- 用计算机进行有理数计算时,鲁教版六上2.11《用计算器进行有理数的计算》word学案.doc...
- php swoole环境搭建,windows系统php环境安装swoole具体步骤
- 家里“娘娘”发钱,臣不得不遵命呀