拦截器-----extends HandlerInterceptorAdapter

代码:
首先在spring的mvc的xml中加入


<!-- mvc拦截器 -->
<mvc:interceptors>
<mvc:interceptor> <!-- 可以增加多个拦截器 -->
<mvc:mapping path="/**"/> <!-- 需要拦截的 -->
<mvc:exclude-mapping path="/"/> <!-- 不需要拦截的 -->
<mvc:exclude-mapping path="/login"/>
<mvc:exclude-mapping path="/logout"/>
<mvc:exclude-mapping path="/manage/**"/>
<bean class="com.smarcloud.control.aop.SessionHelper" />
</mvc:interceptor>
</mvc:interceptors>

上面配置了 spring将拦截那些,不拦截那些访问。当中的com.smarcloud.control.aop.SessionHelper这个类是要自己写的,拦截后进入这个类

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.stereotype.Repository;
import org.springframework.web.servlet.handler.HandlerInterceptorAdapter;
import com.smarcloud.control.util.Constant;
@Repository //将这个类交给spring容器管理
public class SessionHelper extends HandlerInterceptorAdapter {
@Override
public boolean preHandle(HttpServletRequest request,
HttpServletResponse response, Object handler) throws Exception {
//Constant.LOGIN_USER_SESSION 为session的名字
Object obj = request.getSession().getAttribute(Constant.LOGIN_USER_SESSION);
if(obj==null){
request.getRequestDispatcher("/WEB-INF/views/login.jsp").forward(request, response);
return false;
}
else{
return super.preHandle(request, response, handler);
}
}
}

这个各类将拦截的访问中的request中寻找session 如果是空的,则回到登入页面.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值