博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
springmvc 拦截器,不拦截jsp文件
阅读量:5286 次
发布时间:2019-06-14

本文共 1655 字,大约阅读时间需要 5 分钟。

spring mvc的拦截器只拦截controller不拦截jsp文件,如果不拦截jsp文件也会给系统带安全性问题。

解决方案有两种:

1、将所有的jsp文件放入到WEB-INF文件夹下,这样用户是直接不能访问WEB-INF文件下的jsp文件的。spring mvc的理念也是通过controller里的@RequestMapping来请求相关jsp页面,而非用户直接访问jsp页面。

接下去写相关的配置

在springmvc.xml中加入

 

public class LoginInterceptor implements HandlerInterceptor {    public void afterCompletion(HttpServletRequest arg0,            HttpServletResponse arg1, Object arg2, Exception arg3)            throws Exception {        // TODO Auto-generated method stub    }    public void postHandle(HttpServletRequest arg0, HttpServletResponse arg1,            Object arg2, ModelAndView arg3) throws Exception {        // TODO Auto-generated method stub    }    public boolean preHandle(HttpServletRequest req, HttpServletResponse res,            Object handler) throws Exception {        HttpSession session=req.getSession();        Object obj=session.getAttribute("userId");        if(obj==null||obj.toString().equals("")){            req.getRequestDispatcher("/admin/login.do").forward(req, res);            return false;        }        return true;    }}

在contoller层

@Controller@RequestMapping("/admin")public class AdminController {            @RequestMapping("/login")      public String login(){        return "/WEB-INF/jsp/admin/login.jsp";    }}

以上可以解决spring mvc拦截jsp页面问题

2、还有一种解决方案:jsp如果不放在WEB-INF文件下,spring mvc是无法拦截的,这种请情况下需要用最原始的servlet的Filter接口,具体可以参照

以下博客不再赘述。

http://blog.csdn.net/lsx991947534/article/details/45499205

 

http://blog.csdn.net/jkeven/article/details/8715833

转载于:https://www.cnblogs.com/Anders888/p/6073190.html

你可能感兴趣的文章
【古曲】流水-古琴曲
查看>>
【题解】 P2763 试题库问题(网络流)
查看>>
Struts2 (一)入门
查看>>
作业四: 结对编程项目---四则运算
查看>>
Windbg 驱动加载时进入调试
查看>>
Yum:[Errno 5] [Errno 2] No such file or directory错误
查看>>
(文档)流媒体资源 Streaming Assets
查看>>
结合File类浅析递归的使用
查看>>
js深入(二)函数的执行与上下文
查看>>
判断的值是否为空
查看>>
C# 添加事件
查看>>
HTML5吧
查看>>
Memcache学习第一课:Memcache的安装(Windows 7操作系统)
查看>>
杭电1019-Least Common Multiple
查看>>
找出两个列表中相同元素与不同元素
查看>>
log4net 2.0.8 不支持core 数据库记录日志
查看>>
18个web开发人员必备的Chrome扩展
查看>>
分享10个来自知名设计社区drippple.com的免费纹理设计
查看>>
ubuntu16.04降级内核版本至3.13.0-85
查看>>
Junit中的异常测试
查看>>