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...

相关推荐
追随者永远是胜利者6 分钟前
(LeetCode-Hot100)23. 合并 K 个升序链表
java·算法·leetcode·链表·go
Moshow郑锴21 分钟前
Java SpringBoot 疑难 Bug 排查思路解析:从“语法正确”到“行为相符”
java·spring boot·bug
APIshop33 分钟前
淘宝商品评论接口实战解析:从抓包到数据抓取全链路技术指南
java·python
百锦再1 小时前
线程安全的单例模式全方位解读:从原理到最佳实践
java·javascript·安全·spring·单例模式·kafka·tomcat
百锦再1 小时前
Java synchronized关键字详解:从入门到原理(两课时)
java·开发语言·struts·spring·kafka·tomcat·maven
油丶酸萝卜别吃1 小时前
什么是 Java 内存模型(JMM)?
java·开发语言
量子炒饭大师1 小时前
【C++入门】Cyber神经的义体插件 —— 【类与对象】内部类
java·开发语言·c++·内部类·嵌套类
Hx_Ma161 小时前
测试题(四)
java·开发语言·jvm
Never_Satisfied2 小时前
在c#中,抛出异常,并指定其message的值
java·javascript·c#
没有bug.的程序员2 小时前
IDEA 效能巅峰实战:自定义模板 Live Templates 内核、快捷键精密逻辑与研发提效深度指南
java·ide·intellij-idea·快捷键·研发提效·自定义模板