SSM框架项目的mvc拦截器
2024-10-10 21:58:54
为了防止用户在不登录的情况下通过并接请求直接访问系统,我们需要通过session和拦截器来防止这样的情况。
拦截器的配置:
为拦截器建立一个包:interceptor,并在包里建立 LoginInterceptor 拦截器类
拦截器需要 implements HandlerInterceptor,并实现 HandlerInterceptor 的方法:
/**
* 登录拦截器
*/
public class LoginInterceptor implements HandlerInterceptor { @Override
public boolean preHandle(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o) throws Exception { HttpSession session = httpServletRequest.getSession();
if ( session.getAttribute("LOGIN_USER") != null ){
return true;
}else {
httpServletResponse.sendRedirect( httpServletRequest.getContextPath() + "/gradu/dologin");
return false;
}
} @Override
public void postHandle(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o, ModelAndView modelAndView) throws Exception { } @Override
public void afterCompletion(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o, Exception e) throws Exception { }
}
配置spring-mvc文件:
<!--拦截器-->
<mvc:interceptors>
<mvc:interceptor>
<mvc:mapping path="/**" />
<mvc:exclude-mapping path="/gradu/dologin" />
<bean class="com.hwl.interceptor.LoginInterceptor"></bean>
</mvc:interceptor>
</mvc:interceptors>
注意:
<mvc:mapping path="/**"/> 是已经拦截了所有请求,包括登录,
如果后来想不拦截某个页面,就添加:<mvc:exclude-mapping path="/system/login" />
另外。记得登录时添加session。
最新文章
- Java: IO 学习小结
- Android 采用HttpClient提交数据到服务器
- 原生+jquery 实现好看滚动条。
- MyEclipse xml 手动添加 dtd
- 【word xml】将word转化为xml格式后,如何在xml中卫word添加分页符
- 阿里云 centos 修改iptables
- 附加没有LDF的数据库文件
- 关于wxpython多线程研究包括(import Publisher错误研究)
- .NET性能优化小技巧
- 配置JDK和Tomcat环境变量
- Java 作业6
- Bootstrap2.x与Bootstrap3.x的区别
- js判断用户的浏览器
- centos 关闭selinux
- c# 中实用包,实用dll。
- html可用于跨域的三个标签
- java开源类库pinyin4j的使用
- 关于 android 返回键 代码实现
- 联想Z510升级BCM94352HMB刷网卡白名单曲折经历
- 使用spring整合Quartz实现—定时器