81,092
社区成员
发帖
与我相关
我的任务
分享
自动获得所有用户的session,然后做一个遍历依次session.invalidate()就行了
<filter>
<filter-name>LoginFilter</filter-name>
<filter-class>wap.cn.filter.LoginFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>LoginFilter</filter-name>
<url-pattern>*.do</url-pattern>
</filter-mapping>
<filter>
<filter-name>LoginFilter2</filter-name>
<filter-class>wap.cn.filter.LoginFilter2</filter-class>
</filter>
<filter-mapping>
<filter-name>LoginFilter2</filter-name>
<url-pattern>*.jsp</url-pattern>
</filter-mapping>
package wap.cn.filter;
import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
public class LoginFilter2 implements Filter{
public void destroy() {
// TODO Auto-generated method stub
}
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
// TODO Auto-generated method stub
HttpServletRequest req = (HttpServletRequest) request;
HttpServletResponse resp = (HttpServletResponse) response;
request.setCharacterEncoding("UTF-8");
response.setCharacterEncoding("UTF-8");
HttpSession session = req.getSession();
StringBuffer url = req.getRequestURL();
String login = (String) session.getAttribute("login");
if (login!=null) {
chain.doFilter(request, response);
}else if (url.indexOf("login.jsp")>0) {//如果请求登陆页面通过
chain.doFilter(request, response);
}
else {
resp.sendRedirect("/CountFee/login/login.jsp");
}
}
public void init(FilterConfig filterConfig) throws ServletException {
// TODO Auto-generated method stub
}
}
package wap.cn.filter;
import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
public class LoginFilter implements Filter{
public void destroy() {
// TODO Auto-generated method stub
}
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
// TODO Auto-generated method stub
HttpServletRequest req = (HttpServletRequest) request;
HttpServletResponse resp = (HttpServletResponse) response;
request.setCharacterEncoding("UTF-8");
response.setCharacterEncoding("UTF-8");
HttpSession session = req.getSession();
StringBuffer url = req.getRequestURL();
String login = (String) session.getAttribute("login");
if (login!=null) {
chain.doFilter(request, response);
}else if (url.indexOf("login.do")>0) {//如果请求登陆通过
chain.doFilter(request, response);
}
else {
resp.sendRedirect("/CountFee/login/login.jsp");
}
}
public void init(FilterConfig filterConfig) throws ServletException {
// TODO Auto-generated method stub
}
}