日期:2014-05-16 浏览次数:20490 次
1. public class GzipJsFilter implements Filter
2. {
3. Map headers = new HashMap();
4.
5. public void destroy() { }
6.
7. public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain)throws IOException, ServletException {
8. if (req instanceof HttpServletRequest)
9. doFilter((HttpServletRequest)req, (HttpServletResponse)res, chain);
10. else
11. chain.doFilter(req, res);
12. }
13.
14. public void doFilter(HttpServletRequest request, HttpServletResponse response,FilterChain chain)
15. throws IOException, ServletException
16. {
17. request.setCharacterEncoding("UTF-8");
18. for (Iterator it = this.headers.entrySet().iterator(); it.hasNext(); ) {
19. Map.Entry entry = (Map.Entry)it.next();
20. response.addHeader((String)entry.getKey(), (String)entry.getValue());
21. }
22. chain.doFilter(request, response);
23. }
24.
25. public void init(FilterConfig config) throws ServletException {
26. String headersStr = config.getInitParameter("headers");
27. String[] headers = headersStr.split(",");
28. for (int i = 0; i < headers.length; ++i) {
29. String[] temp = headers[i].split("=");
30. this.headers.put(temp[0].trim(), temp[1].trim());
31. }
32. }
33. }