• filter 过滤emoji


    拦截器
    public class EmojiFilter implements Filter {
    
        private FilterConfig filterConfig;
    
        public void init(FilterConfig filterConfig) throws ServletException {
            System.out.println("Filter initialized");
            this.filterConfig = filterConfig;
        }
    
        public void destroy() {
            System.out.println("Filter destroyed");
            this.filterConfig = null;
        }
    
        public void doFilter(ServletRequest request, ServletResponse response,
                FilterChain chain) throws IOException, ServletException {
            chain.doFilter(new MyRequestWrapper((HttpServletRequest) request), response);
        }
    
    }
    web.xml配置
    <!-- emoji过滤 -->
        <filter>
            <filter-name>EmojiFilter</filter-name>
            <filter-class>com.qtkj.base.EmojiFilter</filter-class>
            <init-param>
                <param-name>encoding</param-name>
                <param-value>UTF-8</param-value>
            </init-param>
        </filter>
        <filter-mapping>
            <filter-name>EmojiFilter</filter-name>
            <url-pattern>/*</url-pattern>
        </filter-mapping>
     1 实际过滤方法
     2 public class MyRequestWrapper extends HttpServletRequestWrapper {
     3     public MyRequestWrapper(HttpServletRequest servletRequest) {
     4         super(servletRequest);
     5     }
     6 
     7     public String[] getParameterValues(String parameter) {
     8         String[] results = super.getParameterValues(parameter);
     9         if (results == null)
    10             return null;        
    11 
    12         int count = results.length;
    13         String[] trimResults = new String[count];
    14         for (int i = 0; i < count; i++) {            
    15             trimResults[i] = com.qtkj.weixin.utils.EmojiFilter.filterEmoji(results[i].trim());
    16             trimResults[i]=trimResults[i].replace(" ", "");
    17         }        
    18         System.out.println("==========="+trimResults+"----------");
    19         return trimResults;
    20     }           
    21 }
    22 结合emoji处理方法中的方法
  • 相关阅读:
    codevs 1163:访问艺术馆
    codevs 2853:方格游戏
    冲刺Noip2017模拟赛2 解题报告——五十岚芒果酱
    HDU 1317:XYZZY
    codevs 1380:没有上司的舞会
    POJ 1734:Sightseeing trip
    lesson 23 one man's meat is another man's poison
    wordlist 4
    TPO-12 C1 Revise a Hemingway paper
    lesson 22 by heart
  • 原文地址:https://www.cnblogs.com/-lpf/p/5654199.html
Copyright © 2020-2023  润新知