分享好友 最新资讯首页 最新资讯分类 切换频道
骚操作!SpringBoot 过滤热搜与不雅文字~
2024-11-07 22:23

# 前言

骚操作!SpringBoot 过滤热搜与不雅文字~

这里主要讲springboot整合redis的个人搜索记录与热搜、敏感词过滤与替换两个功能,下面进行环境准备,引入相关maven依赖

 

application.yml配置为

 

最后敏感词文本文件放在resources/static目录下,取名为word.txt,敏感词文本网上很多,这里就随便贴一个:github敏感词

# 不雅文字过滤

1、实现原理

简单原理如下图所示,使用了DFA算法,创建结点类,里面包含是否是敏感词结束符,以及一个HashMap,哈希里key值存储的是敏感词的一个词,value指向下一个结点(即指向下一个词,一个哈希表中可以存放多个值,比如赌博、赌黄这两个都是敏感词。

2、实现方法

2.1 敏感词库初始化

敏感词库的初始化,这里主要工作是读取敏感词文件,在内存中构建好敏感词的Map节点

 

2.2 敏感词过滤器

敏感词过滤器,主要功能是初始化敏感词库,敏感词的过滤以及替换

 

2.3 测试使用

最后进行测试,这里有两种方式可以获取,因为容器初始化时会默认执行无参构造​​​​​​​

 

# Redis搜索栏热搜

1、前言

使用java和redis实现一个简单的热搜功能,具备以下功能

搜索栏展示当前登陆的个人用户的搜索历史记录,删除个人历史记录

用户在搜索栏输入某字符,则将该字符记录下来 以zset格式存储的redis中,记录该字符被搜索的个数以及当前的时间戳 (用了DFA算法

每当用户查询了已在redis存在了的字符时,则直接累加个数, 用来获取平台上最热查询的十条数据。(可以自己写接口或者直接在redis中添加一些预备好的关键词

最后还要做不雅文字过滤功能。

代码实现热搜与个人搜索记录功能,主要controller层下几个方法就行了

  • 向redis 添加热搜词汇(添加的时候使用下面不雅文字过滤的方法来过滤下这个词汇,合法再去存储

  • 每次点击给相关词热度 +1

  • 根据key搜索相关最热的前十名

  • 插入个人搜索记录

  • 查询个人搜索记录

2、代码实现

2.1 创建RedisKeyUtils 工具类

管理redis的键,防止太乱了​​​​​​​

 

2.2 核心搜索文件

两个文件是一起的​​​​​​​

 

接上一个

 

2.3 测试使用

以下只是简单的测试,上面的核心函数可以自己组合,一般组合加上敏感词过滤

 
 

最新文章
8种SEO优化技巧超级蜘蛛查
创作高质量的内容时,要确保信息的原创性与实用性,避免复制粘贴他人内容。在内容中融入适当的关键词,并注重内容的结构和排版,
Airtest-Selenium实操小课:爬取新榜数据
1. 前言 最近看到群里很多小伙伴都在用Airtest-Selenium做一些web自动化的尝试,正好趁此机会,我们也出几个关于web
#### 文案生成器免费版:无需投资即可享受智能服务
在数字时代,内容创作已成为多人的日常工作之一。无论是社交媒体运营、广告文案撰写,还是网络小说创作,高效地产出优质内容都是
再看快速排序(QuickSort)
      快速排序是一个十分伟大的算法,作为再一次的学习,写一写快排以及和快排相关的问题。 1.基本的快速排序方
阿里伴侣配合阿里巴巴打造全方位线上推广
在当今竞争激烈的电商时代,企业的线上推广至关重要。阿里巴巴作为全球知名的电商平台,为众多企业提供了广阔的发展空间。而阿里
Python大数据分析&人工智能教程 - Scrapy工作原理详解与实操案例
Scrapy是一个开源的、用Python编写的高性能网络爬虫框架,用于抓取网站数据和提取结构性数据。它是基于Twisted异步网络框架构建
AI智能写作助手:一站式解决内容创作、文章润色与高效写作的全面工具
在信息爆炸的时代内容创作已经成为企业、媒体和个人展现自我、传递价值的不可或缺手。面对海量的信息与日益增强的内容品质需求高
你的站点抗压么?推荐一款超方便的开源压测工具
这里是 HelloGitHub 推出的《讲解开源项目》系列,本期介绍一款标星 17.7k 纯 Go 语言实现的 HTTP(S) 压测工具——vegetaVegeta
【系统架构设计】计算机网络
OSI/RM 结构模型 1977年,国际标准化组织为适应网络标准化发展的需求,制定了开放系统互联参考模型(Open System Interconnectio
全世界规模最大战争排名,第一名居然是清朝时期!
自打人类走上进化这条路,就想着法儿想要证明【一伙人就该被另一伙人支配】。古罗马角斗士时代一方有多大势力,就看他有多少人的