这个类很简单,用于在退出登录时将以前登录的用户注销掉,并且重定向到配置的页面,默认的是”/”,可以改变redirectUrl这个属性,使其跳转到我们指定的页面。
看看他的preHandle方法
@Override
protectedboolean preHandle(ServletRequest request, ServletResponse response) throws Exception {
Subject subject = getSubject(request, response);
String redirectUrl = getRedirectUrl(request, response, subject);
try {
subject.logout();//调用logout方法。从session中删除之前放入session的内容。下一次再访问的时候就必须重新登录了。
} catch (SessionException ise) {
log.debug("Encountered session exception during logout. This can generally safely be ignored.", ise);
}
issueRedirect(request, response, redirectUrl);
returnfalse;
}
在这个方法中返回了false,也就是不再执行其他的操作,直接到浏览器重定向了。所以如果我们还有别的操作的话可以继承这个类,然后在afterCompletion方法中操作。