本文最后更新于 2026年5月4日 晚上
升级 SensitiveUtilServiceImpl
前言
书再接上回
完成升级 EmailServiceImpl 的工作后
对敏感词的检测还有一小部分工作要完成
就是还要对用户注册时的用户名,评论和更改用户信息时的昵称进行检测
这些都是会展示在网页里的 所以要进行检测才能展示
代码实现
由于先前在 SensitiveUtilServiceImpl 里写的检测方法博主不参与检测 输入参数多了个邮箱
所以要再写一个相似的方法来对单纯的内容进行检测
这次不管博主还是谁都要进行检测了
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
|
@Override public Boolean checkSensitiveWordsSimple(String content) { if (StringUtils.isEmpty(content)) { return false; }
if (SensitiveUtil.containsSensitiveWords(content)) { java.util.Map<String, String> localSensitiveWordsWithSource = SensitiveUtil.findSensitiveWordsWithSource(content); log.info("本地词库检测为敏感词(用户名/昵称),检测到的敏感词及来源: {}", localSensitiveWordsWithSource); return true; } log.info("本地词库检测无敏感词(用户名/昵称) >>>>> 进入开源词库检测"); if (SensitiveWordHelper.contains(content)) { java.util.List<String> openSourceSensitiveWords = SensitiveWordHelper.findAll(content); log.info("开源词库检测为敏感词(用户名/昵称),检测到的敏感词: {}", openSourceSensitiveWords); return true; } log.info("开源词库检测无敏感词(用户名/昵称) >>>>> 进入多ai并行检测"); DetectionStatusEnum aiStatus = aiChatService.aiCheckWord(content); if (aiStatus.shouldBlock()) { log.info("多AI并行检测为敏感词(用户名/昵称),内容: {}", content); return true; } log.info("多AI并行检测无敏感词(用户名/昵称) >>>>> 检测通过"); return false; }
|
SensitiveUtilService 添加接口方法
1 2 3 4 5 6
|
Boolean checkSensitiveWordsSimple(String content);
|
在更新用户信息中的检测
在注册中的检测
在评论中的检测
PS:该系列只做为作者学习开发项目做的笔记用
不一定符合读者来学习,仅供参考
预告
后续会记录博客的开发过程
每次学习会做一份笔记来进行发表
“一花一世界,一叶一菩提”
版权所有 © 2026 云梦泽
欢迎访问我的个人网站:https://hgt12.github.io/