SSM框架登陆拦截器的实现

  1. 需要创建一个intercept类,
package com.whx.interceptor;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import org.springframework.web.servlet.HandlerInterceptor;
import org.springframework.web.servlet.ModelAndView;

public class LoginHandlerIntercepter 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 arg1, Object arg2) throws Exception {
String requestURI = request.getRequestURI();
//如果获取到的这个url路径是在查询后台数据的方法的时候,进行拦截
if(requestURI.indexOf("toSoleListPage.do")>0){
HttpSession session = request.getSession();
String servicename = (String) session.getAttribute("servicename");
if(servicename!=null){
//登陆成功的用户
return true;
}else{
//没有登陆,转向登陆界面
request.getRequestDispatcher("/index.jsp").forward(request,arg1);
return false;
}
}else{
//如果不是以上两种方法的话,都进行放过
return true;
}
}
}

2.配置spring-mvc.xml文件,里面添加如下代码,class路径指向的是自己写的那个intercept类的全路径
<!-- 配置拦截器 -->
<mvc:interceptors>
<!-- 配置登陆拦截器 -->
<mvc:interceptor>
<mvc:mapping path="/**"/>
<bean class="com.xxx.interceptor.LoginHandlerIntercepter"></bean>
</mvc:interceptor>
</mvc:interceptors>
4.完成以上的操作,拦截器就可以正常的使用了.使用的方法是复制地址栏查询后台方法的路径,然后在另一个浏览器打开,如果被成功的拦截到了登录页面,及说明拦截器的配置成功了!


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值