sensitive-word-admin 敏感词控台 v1.2.0 版本开源

开源目的

丰富 sensitive-word 的生态。

提供最基本的操作例子,便于在此基础上丰富实现自己的敏感词控台。

避免重复开发的成本,让更多的精力专注于业务。

拓展阅读

sensitive-word-admin 敏感词控台 v1.2.0 版本开源
sensitive-word 基于 DFA 算法实现的高性能敏感词工具介绍

v1.2.0 版本特性

优化对应的组件依赖,sensitive-word 同步升级到最新版本。

修复已知问题。

模板已包含敏感词基础的操作,后续将持续优化。

核心 api

提供了核心的 api,可以让用户自行调用。在这个基础上封装自己的脱敏服务。

接口列表

api 入参 出参 说明
/api/sensitiveWord/contains string boolean 是否包含敏感词
/api/sensitiveWord/findAll string List<String> 获取所有的敏感词
/api/sensitiveWord/findFist string string 获取第一个的敏感词
/api/sensitiveWord/replace string string 获取替换后的结果
/api/sensitiveWord/tags string Set<String> 获取敏感词的标签列表

核心实现

spring 配置

java 复制代码
@Configuration
public class SensitiveWordConfig {

    @Autowired
    private MyDdWordAllow myDdWordAllow;

    @Autowired
    private MyDdWordDeny myDdWordDeny;

    /**
     * 初始化引导类
     * @return 初始化引导类
     * @since 1.0.0
     */
    @Bean
    public SensitiveWordBs sensitiveWordBs() {
        return SensitiveWordBs.newInstance()
                .wordAllow(WordAllows.chains(WordAllows.defaults(), myDdWordAllow))
                .wordDeny(WordDenys.chains(WordDenys.defaults(), myDdWordDeny))
                .ignoreRepeat(false)
                // 各种其他配置
                .init();
    }

}

最核心的代码部分,引入初默认配置之外的数据库的 MyDdWordAllow + MyDdWordDeny,通过数据库层面的

refresh

每次敏感词变更,会触发对应的敏感词 refresh 操作。

所以不用重启,就可以实现敏感词的实时刷新。

后续会做进一步的优化,让敏感词精确到单个词,刷新性能更好。

开源地址

github.com/houbb/sensi...

后续 ROAD-MAP

  • 登录/登出
  • 页面操作的权限管理
  • 调用方系统 token 注册管理
  • 敏感词的数据大盘
  • 调用信息数据大盘
  • 操作审计日志

参考资料

github.com/houbb/sensi...

相关推荐
狼爷42 分钟前
吃透 Java Function 接口,搞定 99% 的 Stream 场景
java·函数式编程
祎雪双十Gy5 小时前
从 DataX 的配置加载说起:我用 FastJson2 做了一个轻量级动态配置管理库
java·后端
小锋java12345 小时前
分享一套锋哥原创的SpringBoot4+Vue3宠物领养网站系统
java
考虑考虑8 小时前
Java实现hmacsha1加密算法
java·后端·java ee
掉鱼的猫9 小时前
Spring Boot → Solon 注解迁移实战指南:一张对照表说清楚
java·spring boot
plainGeekDev9 小时前
广播接收器 → Flow + Lifecycle
android·java·kotlin
plainGeekDev9 小时前
EventBus → SharedFlow
android·java·kotlin
带刺的坐椅9 小时前
Spring Boot → Solon 注解迁移实战指南:一张对照表说清楚
java·springboot·web·solon
用户37215742613510 小时前
Java 将一个 PPT 文档拆分为多个文件
java
冬奇Lab1 天前
每日一个开源项目(第142篇):android/skills - Google 官方 Android 开发 AI Skill 库
人工智能·开源·资讯