zoukankan      html  css  js  c++  java
  • 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处理方法中的方法
  • 相关阅读:
    spring 定时任务 taskScheduler详解
    shiro.ini 配置详解
    nginx : server_name localhost 和 chrome : Provisional headers are shown
    参数文件管理
    归档日志管理
    日志文件管理
    控制文件管理
    数据文件管理
    OGG配置参数样例
    OGG配置案例一(源表与目标表结构一致)
  • 原文地址:https://www.cnblogs.com/-lpf/p/5654199.html
Copyright © 2011-2022 走看看