SpringBoot项目实现敏感词汇过滤

记录背景:SpringBoot项目实现敏感词汇过滤

一:敏感词汇文件放置位置 二:说明:如果txt文件不能编译,pom文件添加下面配置

<build>
        <resources>
            <resource>
                <directory>src/main/resources</directory>
                <includes>
                    <include>**/*.*</include>
                </includes>
            </resource>
        </resources>
    </build>

三:简单的内存缓存敏感词汇类

public class Cache {
          
   
    /**
     * 键值对集合
     */
    private final static ConcurrentHashMap<String, List<String>> MAP = new ConcurrentHashMap<>();
    /**
     * 添加缓存  
     */
    public synchronized static void put(String key, List<String> data) {
          
   
        //清除原键值对
        Cache.remove(key);
        //不设置过期时间
        MAP.put(key, data);
    }
    /**
     * 读取缓存    
     */
    public static List<String> get(String key) {
          
   
        return MAP.get(key);
    }
    /**
     * 清除缓存
     */
    public synchronized static void remove(String key) {
          
   
        MAP.remove(key);
    }
}

四:敏感词汇过滤替换为*

五:测试

经验分享 程序员 微信小程序 职场和发展