自管理敏感词集成到文章审核中

①:创建敏感词表,导入资料中wm_sensitive到leadnews_wemedia库中

②:拷贝对应的wm_sensitive的mapper到项目中

③:在文章审核的代码中添加自管理敏感词审核

  @Autowired
    private WmSensitiveMapper wmSensitiveMapper;
    /**
     * 自管理敏感词审核
     * @param content
     * @param wmNews
     * @return
     */
    private boolean handleSensitiveScan(String content, WmNews wmNews) {
        boolean flag = true;
        //1、获取所有敏感词
        List<WmSensitive> wmSensitives = wmSensitiveMapper.selectList(Wrappers.<WmSensitive>lambdaQuery().select(WmSensitive::getSensitives));
        List<String> sensitiveList = wmSensitives.stream().map(WmSensitive::getSensitives).collect(Collectors.toList());
        //2、初始化敏感词库
        SensitiveWordUtil.initMap(sensitiveList);
        //3、查看文章中是否有敏感词
        Map<String, Integer> map = SensitiveWordUtil.matchWords(content);
        if(map.size() > 0){
            updateWmNews(wmNews, (short) 2, "当前文章中存在违规内容");
            flag = false;
        }
        return flag;
    }

 

posted @ 2023-07-03 14:22  佛系粥米  阅读(30)  评论(0)    收藏  举报