Springmvc拦截器实现网站非登录不能访问。
来源:互联网 发布:php批量传文件 编辑:程序博客网 时间:2024/04/30 12:52
public class AuthorizedInterceptor implements HandlerInterceptor{
private static final String[] IGNORE_URI={"/loginForm","/login","/404.html"};
@Override
public void afterCompletion(HttpServletRequest arg0, HttpServletResponse arg1, Object arg2, Exception arg3)
throws Exception {
// TODO Auto-generated method stub
//在整个请求完成后执行,主要用于清理资源
}
//在Controller的方法调用之后执行
@Override
public void postHandle(HttpServletRequest arg0, HttpServletResponse arg1, Object arg2, ModelAndView arg3)
throws Exception {
// TODO Auto-generated method stub
}
//在Controller方法调用之前执行,当返回值为false的时候整个请求就结束了
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
// TODO Auto-generated method stub
boolean flag=false;
String servletPath=request.getServletPath();
for(String s:IGNORE_URI){
if(servletPath.contains(s)){
flag=true;
break;
}
}
if(!flag){
User user=(User)request.getSession().getAttribute(HrmConstants.USER_SESSION);
if(user==null){
request.setAttribute("message","请先登录再访问网站!");
request.getRequestDispatcher(HrmConstants.LOGIN).forward(request, response);
return flag;
}else{
flag=true;
}
}
return flag;
}
}
private static final String[] IGNORE_URI={"/loginForm","/login","/404.html"};
@Override
public void afterCompletion(HttpServletRequest arg0, HttpServletResponse arg1, Object arg2, Exception arg3)
throws Exception {
// TODO Auto-generated method stub
//在整个请求完成后执行,主要用于清理资源
}
//在Controller的方法调用之后执行
@Override
public void postHandle(HttpServletRequest arg0, HttpServletResponse arg1, Object arg2, ModelAndView arg3)
throws Exception {
// TODO Auto-generated method stub
}
//在Controller方法调用之前执行,当返回值为false的时候整个请求就结束了
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
// TODO Auto-generated method stub
boolean flag=false;
String servletPath=request.getServletPath();
for(String s:IGNORE_URI){
if(servletPath.contains(s)){
flag=true;
break;
}
}
if(!flag){
User user=(User)request.getSession().getAttribute(HrmConstants.USER_SESSION);
if(user==null){
request.setAttribute("message","请先登录再访问网站!");
request.getRequestDispatcher(HrmConstants.LOGIN).forward(request, response);
return flag;
}else{
flag=true;
}
}
return flag;
}
}
Springmvc配置文件中配置拦截器
<mvc:interceptors>
<mvc:interceptor>
<!-- 拦截所有请求 -->
<mvc:mapping path="/*"/>
<!-- 自定义判断用户权限的拦截类 -->
<bean class="org.fkit.hrm.interceptor.AuthorizedInterceptor"/>
</mvc:interceptor>
</mvc:interceptors>
0 0
- Springmvc拦截器实现网站非登录不能访问。
- springmvc实现方法拦截,用户未登录不能访问
- 登录检查 springMVC Interceptor拦截器实现登访问
- SpringMVC 登录拦截器实现
- SpringMVC拦截器实现登录
- SpringMVC拦截器实现登录控制
- SpringMVC拦截器实现登录认证
- springmvc拦截器实现自动登录
- SpringMVC通过拦截器实现登录控制
- SpringMVC配置拦截器实现登录控制
- SpringMVC拦截器实现登录认证
- SpringMVC拦截器实现登录控制
- SpringMVC拦截器实现登录认证
- SpringMVC拦截器实现登录认证
- SpringMVC拦截器实现登录验证
- SpringMvc使用拦截器实现登录认证
- springmvc登录拦截器的实现
- SpringMVC拦截器实现登录认证
- sql server 2008的安装
- Pip及其Ride的安装针对RobotFramework框架
- 3月24日,TestFrame采用适配器形式产生匿名对象,每日20行。
- Android中从asset/raw拷贝数据的正确方式
- 【JZOJ3631】三角(triangle)
- Springmvc拦截器实现网站非登录不能访问。
- MIT 6.00.1x 计算机科学和Python编程导论 Set 6
- PTA 5-11 玩转二叉树 (25分)【已知中序和前序求树】
- Android手机 Fildder真机抓包
- MySQL分库分表总结参考
- MATLAB中神经网络工具箱的使用
- 关于微信接口简谈
- SessionFactory
- Spring基于XML配置AOP