Java数据敏感词转换成符号的方法详解

 更新时间:2024年03月28日 10:00:02   作者:QPiker  
在某个论坛下用户可以随意留言,为了防止不法分子在网上任意冲浪,需要对一些敏感词汇进行一些校验,所以这篇文章给大家介绍了Java数据敏感词转换成符号的方法,需要的朋友可以参考下

Java数据敏感词转换成符号

在某个论坛下用户可以随意留言,为了防止不法分子在网上任意冲浪,需要对一些敏感词汇进行一些校验。在这里使用一个高性能敏感词工具sensitive-word。

maven

<!--     数据脱敏   -->
        <dependency>
            <groupId>com.github.houbb</groupId>
            <artifactId>sensitive-word</artifactId>
            <version>0.13.1</version>
        </dependency>

直接使用

	    String str1 = "我他妈的没有说过脏话";
        String replace1 = SensitiveWordHelper.replace(str1);
        System.out.println("原始数据:" + str1);
        System.out.println("脱敏数据:" + replace1);
// 原始数据:我他妈的没有说过脏话
// 脱敏数据:我***没有说过脏话

结合Spring使用

拓展已脱敏词汇

@Component
public class MyWordDeny implements IWordDeny {

    @Override
    public List<String> deny() {
        return Arrays.asList("卢本伟没有开挂","我的发");
    }
}

拓展排除脱敏词汇

@Component
public class MyWordAllow implements IWordAllow {
    @Override
    public List<String> allow() {
        return Arrays.asList("废物","辣鸡");
    }
}

配置类

@Configuration
public class SpringSensitiveWordConfig {

    /**
     * 排除敏感词
     */
    @Resource
    private MyWordAllow myWordAllow;

    /**
     * 拓展敏感词
     */
    @Resource
    private MyWordDeny myWordDeny;


    /**
     * 初始化引导类
     * WordAllows.chains 在原作者词汇数据库进行拓展
     * WordDenys.chains 同上
     */
    @Bean
    public SensitiveWordBs sensitiveWordBs() {
        return SensitiveWordBs.newInstance()
                .wordAllow(WordAllows.chains(WordAllows.defaults(), myWordAllow))
                .wordDeny(WordDenys.chains(WordDenys.defaults(), myWordDeny))
                .init();
    }
}

测试调用

@SpringBootTest(classes = QpikerAdminApplication.class)
@RunWith(SpringRunner.class)
public class SensitiveTest {

    /**
     * 数据脱敏
     */
    @Resource
    private SpringSensitiveWordConfig springSensitiveWordConfig;

    @Test
    public void wordSensitive(){
        String str = "谁他妈的是废物?,我卢本伟没有开挂真的,1824176666,我的发你是小辣鸡";
        System.out.println("原始数据:" + str);
        String replace = springSensitiveWordConfig.sensitiveWordBs().replace(str);
        System.out.println("脱敏数据:" + replace);
    }
}

输出结果

原始数据:谁他妈的是废物?,我卢本伟没有开挂真的,18241766666,他妈的,我的发你是小辣鸡
脱敏数据:谁***是废物?,我*******真的,***********,***,***你是小辣鸡

'废物' 被加到排除脱敏数据中,结果没被替换
'卢本伟没有开挂' 被加到已脱敏数据中,结果被替换

真没有意说脏话,希望各大网友们构建一个文明网络世界。

到此这篇关于Java数据敏感词转换成符号的示例代码的文章就介绍到这了,更多相关Java敏感词转换成符号内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Java 实战项目之家居购物商城系统详解流程

    Java 实战项目之家居购物商城系统详解流程

    读万卷书不如行万里路,只学书上的理论是远远不够的,只有在实战中才能获得能力的提升,本篇文章手把手带你用Java实现一个家居购物商城系统,大家可以在过程中查缺补漏,提升水平
    2021-11-11
  • 浅谈Maven包冲突的原理及解决方法

    浅谈Maven包冲突的原理及解决方法

    这篇文章主要介绍了浅谈Maven包冲突的原理及解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07
  • Java实现的微信图片处理工具类【裁剪,合并,等比例缩放等】

    Java实现的微信图片处理工具类【裁剪,合并,等比例缩放等】

    这篇文章主要介绍了Java实现的微信图片处理工具类,可实现针对图片的裁剪、合并、等比例缩放、旋转、识别等各种常见的图片处理功能,需要的朋友可以参考下
    2017-11-11
  • spring boot集成loback日志配置的示例代码

    spring boot集成loback日志配置的示例代码

    这篇文章主要介绍了spring boot集成loback日志配置的示例代码,本文通过示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
    2024-01-01
  • java方法重写时需要注意的问题

    java方法重写时需要注意的问题

    大家好,本篇文章主要讲的是java方法重写时需要注意的问题,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下,方便下次浏览
    2021-12-12
  • mybatis返回的map结果如何设置有序

    mybatis返回的map结果如何设置有序

    这篇文章主要介绍了mybatis返回的map结果如何设置有序,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-01-01
  • Java编译错误信息提示java.lang.ExceptionInInitializer解决

    Java编译错误信息提示java.lang.ExceptionInInitializer解决

    这篇文章主要介绍了Java编译错误信息提示java.lang.ExceptionInInitializer的分析讲解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-07-07
  • Java并发编程之Volatile变量详解分析

    Java并发编程之Volatile变量详解分析

    Volatile关键字是Java提供的一种轻量级的同步机制,本篇文章深入浅出的讲讲Java并发编程的Volatile,通读本篇对大家的学习或工作具有一定的价值,需要的朋友可以参考下
    2021-10-10
  • Java 实现判定顺序表中是否包含某个元素(思路详解)

    Java 实现判定顺序表中是否包含某个元素(思路详解)

    这篇文章主要介绍了Java 实现判定顺序表中是否包含某个元素,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-06-06
  • java正则表达式对特殊字符的转义以及异常现象

    java正则表达式对特殊字符的转义以及异常现象

    这篇文章主要给大家介绍了关于java正则表达式对特殊字符的转义以及异常现象的相关资料,在Java中使用正则表达式匹配特殊字符也需要使用转义字符"\",需要的朋友可以参考下
    2023-06-06

最新评论