记录用户访问操作器

来源:互联网 发布:火牛抢购软件 编辑:程序博客网 时间:2024/06/04 01:35
/** * cn.jbit.filter3.ObserveFilter * 记录用户访问操作器 * 2014-2-18 */package cn.jbit.filter;import java.io.IOException;import java.text.SimpleDateFormat;import java.util.Date;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 cn.jbit.bean.User;public class ObserveFilter implements Filter {public void doFilter(ServletRequest req, ServletResponse resp,FilterChain chain) throws IOException, ServletException {// 记录用户的访问操作HttpServletRequest request = (HttpServletRequest) req;StringBuffer url = request.getRequestURL();// URL全路径// url过滤if (judgeFile(url.toString())) {String operTime = "";// 操作时间String hostIP = "";// 客户端IPString sessionID = "";// SessionIDInteger userID = 0;// 用户编号String description = "";// 描述SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");operTime = sdf.format(new Date());hostIP = request.getRemoteAddr();sessionID = request.getRequestedSessionId();User user = (User) request.getSession().getAttribute("LOGINUSER");if (null != user) {userID = user.getId();}String queryString = request.getQueryString();if (null != queryString) {url.append("?");url.append(queryString);}// 保存至数据库中chain.doFilter(req, resp);}}/** * 过滤类型判断 *  * @param url  URL地址 * @return true记录,false不记录 */public boolean judgeFile(String url) {if (url.endsWith(".gif") || url.endsWith(".jpg")|| url.endsWith(".png") || url.endsWith(".bmp")|| url.endsWith(".css") || url.endsWith(".js")|| url.endsWith(".jsx")) {return false;} else {return true;}}public void init(FilterConfig filterConfig) throws ServletException {}public void destroy() {}}
0 0
原创粉丝点击