说明

到这篇文章前,我们们所有的网页都是在可以直接在浏览器中输入XXX.do来直接访问

,甚至在得到jsp页面后,可以直接通过请求看到数据库的表格!

而这肯定是开发所不允许的.故而,是时候让拦截器登场了,而他也正是一个基本的登录实例所必须的组件.

a 创建拦截器组件,实现HandlerInterceptor接口


public class LoginInteceptor implements HandlerInterceptor{//  其中要实现三个方法
//afterCompletion,postHandle,preHandle//preHandle在处理器执行前被调用这个方法,如果返回的结果为true ,那么继续执行后续的操作,如果为false,后面的程序将不再执行/*** 拦截器 拦截请求完事调用*/public void afterCompletion(HttpServletRequest arg0,HttpServletResponse arg1, Object arg2, Exception arg3)throws Exception {System.out.println("afterCompletion");}/*** 拦截器 拦截请求之后调用*/public void postHandle(HttpServletRequest arg0, HttpServletResponse arg1,Object arg2, ModelAndView arg3) throws Exception {System.out.println("postHandle");}/*** 拦截器 拦截请求之前调用*/public boolean preHandle(HttpServletRequest req, HttpServletResponse res,System.out.println("preHandle");//以下是具体代码HttpSession session=req.getSession();String str=(String) session.getAttribute("login");if(null==str||"".equals(str)){// getContextPath而非直接写路径->防止硬编码->避免项目改名时,修改大量代码.res.sendRedirect(req.getContextPath()+"/login.jsp");return false;}if(str.equals("true")){return true;}else{res.sendRedirect(req.getContextPath()+"/login.jsp");return false;}//以上是具体代码}/*** 如果返回的是 false 此请求 就此拦截* 如果返回的是true  继续走你下面的程序*/}...}

b 注册拦截器组件


<!-- 配置我们的拦截器   --><mvc:interceptors><mvc:interceptor><mvc:mapping path="/**"/><!--对所有访问进行拦截--><!-- 对/user/login.do进行拦截处理--><mvc:exclude-mapping path="/user/login.do"/><bean id="loginInterceptor" class="com.throne.util.UserInteceptor"></bean></mvc:interceptor></mvc:interceptors>

JAVA_OA(六):SpringMVC拦截器相关推荐

  1. 【 第六章 拦截器,注解配置springMVC,springMVC执行流程】

    第六章 拦截器,注解配置springMVC,springMVC执行流程 1.拦截器: ①springMVC中的拦截器用于拦截控制器方法的执行. ②springMVC的拦截器需要实现HandlerInt ...

  2. Spring+SpringMVC+MyBatis深入学习及搭建(十七)——SpringMVC拦截器

    转载请注明出处:http://www.cnblogs.com/Joanna-Yan/p/7098753.html 前面讲到:Spring+SpringMVC+MyBatis深入学习及搭建(十六)--S ...

  3. springMVC 拦截器

    为什么80%的码农都做不了架构师?>>>    实现springMVC 拦截器步骤: 1.定义拦截器类××××HandlerInterceptor  继承HandlerInterce ...

  4. springmvc 拦截器、国际化、验证

    2019独角兽企业重金招聘Python工程师标准>>> springmvc 拦截器 继承了HandlerIntercepter的类可以作为拦截器类: package com.yawn ...

  5. SpringMVC拦截器与异常处理

    SpringMVC拦截器与异常处理 参考文章: (1)SpringMVC拦截器与异常处理 (2)https://www.cnblogs.com/luckgood/p/9724057.html 备忘一下 ...

  6. SpringMVC拦截器2(资源和权限管理)(作为补充说明)

    SpringMVC拦截器(资源和权限管理) 1.DispatcherServlet SpringMVC具有统一的入口DispatcherServlet,所有的请求都通过DispatcherServle ...

  7. SpringMVC拦截器HandlerInterceptor原理及使用

    在使用SpringMVC拦截器的时候,我们接触的最多的便是HandlerInterceptor接口,因为我们所有的自定义拦截器都必须要实现HandlerInterceptor接口,那么就先从Handl ...

  8. Java Servlet 过滤器与 springmvc 拦截器的区别?

    前言:在工作中,遇到需要记录日志的情况,不知道该选择过滤器还是拦截器,故总结了一下. servlet 过滤器 定义 java过滤器能够对目标资源的请求和响应进行截取.过滤器的工作方式分为四种 应用场景 ...

  9. 在拦截器里放入参数 controller_干货|SpringMVC拦截器的使用详解

    一.拦截器简介 Spring MVC的处理器拦截器类似于Servlet开发中的过滤器Filter,用于对处理器进行预处理和后处理. 常见应用场景 1.日志记录:记录请求信息的日志,以便进行信息监控.信 ...

  10. 跨域请求/SpringMVC拦截器

    <!-- 开启允许跨域 --> <mvc:cors> <mvc:mapping path="/**"/> </mvc:cors> S ...

最新文章

  1. java ui设计用什么_UI设计是什么?UI怎么设计?
  2. 0x0F19B7EC (ucrtbased.dll)处(位于 ex6.exe 中)引发的异常: 0xC0000005: 写入位置 0x00740000 时发生访问冲突。
  3. [leetcode] 144. 二叉树的前序遍历
  4. mysql流式查询mybatis_流式查询:MyBatis千万级数据查询解决方案,避免OOM
  5. display:inline-block
  6. 项目学生:使用AOP简化代码
  7. LeetCode 807. 保持城市天际线
  8. 【WCF】服务并发中的“可重入模式”
  9. 汽车制造行业汽车电子,从哪里开始,你合适吗?
  10. 一个查英语缩写的网站
  11. windows部署tensorflow serving
  12. ubuntu 下安装java_Ubuntu下安装java
  13. android 时间颜色,android修改状态栏时间和日期颜色.docx
  14. torch.contiguous()函数用法
  15. JavaScript 的常量和变量
  16. dcs常用的冗余方式_一种DCS系统冗余网络设备电源配置的制作方法
  17. 推荐几个不错的美术游戏资源
  18. 基于博弈思想的攻击图漏洞修复策略
  19. 出差宝宝给我准备的行李
  20. Linux删除文件报no such file

热门文章

  1. koa2使用注意点总结
  2. 【译】SQL Server索引进阶第八篇:唯一索引
  3. C#中的信号量---Semaphore
  4. html定义好的css样式不能被渲染
  5. iOS---GCD的三种常见用法
  6. MySQL数据库基础(三)数据的导入导出、管理表记录、匹配条件
  7. kubernetes资源控制与及ingress插件安装(容忍策略)
  8. 动态asp网页批量生成静态html网页问题
  9. shell 脚本执行 sql
  10. ant编译重设property的值