javaweb登录过滤器

1.web.xml登录过滤器配置



登录过滤器
loginFilter
com.feiwei.filter.LoginFilter

   
     loginFilter  
     /*  
  

2.LoginFilter登录过滤器实现类

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.HttpSession;
import com.feiwei.util.TipsUtil;

public class LoginFilter implements Filter{
TipsUtil tips=new TipsUtil();
@Override
public void destroy() {}

@Override
public void doFilter(ServletRequest request, ServletResponse response,
        FilterChain chain) throws IOException, ServletException {
    HttpServletRequest httpRequest = (HttpServletRequest) request;
        HttpSession session = httpRequest.getSession();
        String url=((HttpServletRequest)request).getServletPath();                                         if(url.endsWith("login.jsp")||url.endsWith("login.do")||

url.endsWith(".css")||url.endsWith(".js")||url.endsWith(".jpg")||url.endsWith(".png")) {
chain.doFilter(request, response);
return;
}
if (session.getAttribute("username")== null) {
tips.setSuccess(false);
tips.setMessage("登录超时或没有登录!");
tips.setUrl("/login.jsp");
request.setAttribute("tips", tips);
request.getRequestDispatcher("/tips.jsp").forward(request,response);
} else {
chain.doFilter(request, response);
}
}
@Override
public void init(FilterConfig arg0) throws ServletException {}
}
3.页面跳转提示类

/**

  • 页面跳转提示类
  • @author Administrator

*/
public class TipsUtil {
private boolean success; // 操作是否成功
private String title; //标题
private String message; // 提示消息
private int time =3; // 倒计时效果要几秒钟
private String url; // 重定向地址

public boolean isSuccess() {
    return success;
}
public void setSuccess(boolean success) {
    this.success = success;
    this.title=this.success?"提示":"警告";
}
public String getMessage() {
    return message;
}
public void setMessage(String message) {
    this.message = message;
}
public int getTime() {
    return time;
}
public void setTime(int time) {
    this.time = time;
}
public String getUrl() {
    return url;
}
public void setUrl(String url) {
    this.url = url;
}
public String getTitle() {
    return title;
}
public void setTitle(String title) {
    this.title = title;
}

}

4.登录页面
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>




用户登录











请登录


















你可能感兴趣的:(javaweb登录过滤器)