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

相关推荐
方也_arkling13 小时前
【Java-Day12】接口
java·开发语言
SimonKing13 小时前
Java程序员接入AI的另一种姿势:LangChain4j
java·后端·程序员
vensli13 小时前
消息跨端架构演进:基于 C++ 的多端一致性研发框架实践
java·人工智能·软件工程·安卓
云烟成雨TD13 小时前
Spring AI Alibaba 1.x 系列【70】思考模式
java·人工智能·spring
逸Y 仙X13 小时前
文章六:ElasticSearch 集群通信安全权限
java·大数据·服务器·elasticsearch·搜索引擎·全文检索
code 小楊13 小时前
AI Agent 核心范式 ReAct 深度详解:原理、流程、源码、实战与工程优化
人工智能·科技·开源
cdbqss113 小时前
VB2026 动态生成工具栏类 BqGetToolStrip
数据库·oracle·开源·.net·学习方法·教育电商·basic
瑞雪兆丰年兮13 小时前
[从0开始学Java|第十六、十七天]项目阶段(拼图小游戏)
java·开发语言
AI人工智能+电脑小能手13 小时前
【大白话说Java面试题 第85题】【Mysql篇】第15题:MySQL 的事务中,幻读是怎么解决的?
java·开发语言·数据库·mysql·面试
Qres82113 小时前
hexo博客上传github page
git·github·hexo