spring的权限控制,过滤器
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了spring的权限控制,过滤器相关的知识,希望对你有一定的参考价值。
spring的过滤器可以实现登录状态问题
1.创建一个AccessFilter类,基础代码
package com.ujia.util.access; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.springframework.web.servlet.HandlerInterceptor; import org.springframework.web.servlet.ModelAndView; import com.ujia.entity.User; public class AccessFilter implements HandlerInterceptor { @Override public void afterCompletion(HttpServletRequest arg0, HttpServletResponse arg1, Object arg2, Exception arg3) throws Exception { } @Override public void postHandle(HttpServletRequest arg0, HttpServletResponse arg1, Object arg2, ModelAndView arg3) throws Exception { } @Override public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { //获取登录session User user=(User) request.getSession().getAttribute("user"); //如果访问路径为登录首页,通过 if(request.getRequestURI().startsWith(request.getContextPath()+"/user/login.htm")){ return true; } //如果请求路径为登录,通过 else if(request.getRequestURI().startsWith(request.getContextPath()+"/user/login")){ return true; } //如果没有登录session,则返回到登录页面 else if(null==user){ response.sendRedirect(request.getContextPath()+"/user/login.htm"); return false; } return true; } }
springMVC配置
<!-- 过滤器 --> <mvc:interceptors> <bean class="com.ujia.util.access.AccessFilter"></bean> </mvc:interceptors>
以上是关于spring的权限控制,过滤器的主要内容,如果未能解决你的问题,请参考以下文章
Spring Security源码:权限访问控制是如何做到的?
Spring Security源码:权限访问控制是如何做到的?