使用Filter封装一个请求
2007-12-23 12:35:39 来源:WEB开发网核心提示:import javax.servlet.Filter;import javax.servlet.FilterChain;import javax.servlet.FilterConfig;import javax.servlet.ServletContext;import javax.servlet.ServletE
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;
public class RequestFilter implements Filter {
PRivate FilterConfig config;
/** Creates new RequestFilter */
public RequestFilter() {
}
public void init(FilterConfig filterConfig) throws ServletException {
this.config = filterConfig;
}
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws java.io.IOException, ServletException {
ReqWrapper wrapper = null;
ServletContext context = null;
if (request instanceof HttpServletRequest)
wrapper = new ReqWrapper((HttpServletRequest) request);
/*
* use the ServletContext.log method to log param names/values
*/
if (wrapper != null) {
context = config.getServletContext();
context.log("Query: " + wrapper.getQueryString());
}
//continue the request, response to next filter or servlet
//destination
if (wrapper != null)
chain.doFilter(wrapper, response);
else
chain.doFilter(request, response);
}
public void destroy() {
/*
* called before the Filter instance is removed from service by the web
* container
*/
}
}
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;
public class RequestFilter implements Filter {
PRivate FilterConfig config;
/** Creates new RequestFilter */
public RequestFilter() {
}
public void init(FilterConfig filterConfig) throws ServletException {
this.config = filterConfig;
}
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws java.io.IOException, ServletException {
ReqWrapper wrapper = null;
ServletContext context = null;
if (request instanceof HttpServletRequest)
wrapper = new ReqWrapper((HttpServletRequest) request);
/*
* use the ServletContext.log method to log param names/values
*/
if (wrapper != null) {
context = config.getServletContext();
context.log("Query: " + wrapper.getQueryString());
}
//continue the request, response to next filter or servlet
//destination
if (wrapper != null)
chain.doFilter(wrapper, response);
else
chain.doFilter(request, response);
}
public void destroy() {
/*
* called before the Filter instance is removed from service by the web
* container
*/
}
}
(出处:http://www.cncms.com)
更多精彩
赞助商链接