我的笔记


  • 文章

  • 关于

  • 标签

  • 搜索

基于前缀树图文详解敏感词过滤

发表于 2019-03-09 |
字数统计: 1.4k | 阅读时长 ≈ 6

一般设计网站的时候,会有问题发布或者是内容发布的功能,这些功能的有一个很重要的点在于如何实现敏感词过滤,要不然可能会有不良信息的发布,或者发布的内容中有夹杂可能会有恶意功能的代码片段,敏感词过滤的基本的算法是前缀树算法,前缀树也就是字典树,通过前缀树匹配可以加快敏感词匹配的速度。
首先是过滤HTML代码,在Spring中有直接的函数可以使用:

1
question.setContent(HtmlUtils.htmlEscape(question.getContent()));

实现的功能就是将html的代码进行转义后显示出来,使其失效。举一个具体的例子:如果有一串字符串为xwabfabcff,敏感词为abc、bf、bc,若这个字符串中包含敏感词,则使用***代替敏感词,实现一个算法。

阅读全文 »

Spring基础知识

发表于 2019-03-09 |
字数统计: 10.8k | 阅读时长 ≈ 42

Spring IoC、AOP 的理解以及实现的原理

Spring IoC

  • Spring IoC 实现原理:反射创建实例。
  • IoC 容器的加戴过程:XML -> 读取 -> Resource -> 解析 -> BeanDefinition -> 注册 -> BeanFactory
阅读全文 »

Redis基础知识

发表于 2019-03-09 |
字数统计: 9.2k | 阅读时长 ≈ 33

简单来说 Redis 就是一个数据库,不过与传统数据库不同的是 Redis 的数据是存在内存中的,所以存写速度非常快,因此 Redis 被广泛应用于缓存方向。此外,redis 也经常用来做分布式锁。

阅读全文 »

Docker简介

发表于 2019-03-09 |
字数统计: 3.2k | 阅读时长 ≈ 11

一句话概括容器:容器就是将软件打包成标准化单元,以用于开发、交付和部署。

  • 容器镜像是轻量的、可执行的独立软件包 ,包含软件运行所需的所有内容:代码、运行时环境、系统工具、系统库和设置。
  • 容器化软件适用于基于Linux和Windows的应用,在任何环境中都能够始终如一地运行。
  • 容器赋予了软件独立性 ,使其免受外在环境差异(例如,开发和预演环境的差异)的影响,从而有助于减少团队间在相同基础设施上运行不同软件时的冲突。
    阅读全文 »

消息队列 RabbitMQ基础知识

发表于 2019-03-09 |
字数统计: 4.9k | 阅读时长 ≈ 17

消息队列

使用消息队列主要有两点好处:

  1. 通过异步处理提高系统性能(削峰、减少响应所需时间);
  2. 降低系统耦合性。
阅读全文 »

MySQL数据库基础知识

发表于 2019-03-09 |
字数统计: 25.8k | 阅读时长 ≈ 92

索引
事务隔离级别
锁
SQL join
Innodb和MyISAM引擎
MyCAT

阅读全文 »

C/C++知识

发表于 2019-03-09 |
字数统计: 4.6k | 阅读时长 ≈ 17

构造函数 析构函数

析构函数和构造函数是一对。构造函数用于创建对象,而析构函数是用来撤销对象。

内联函数

inline

阅读全文 »

Java多线程与并发

发表于 2019-03-09 |
字数统计: 17.5k | 阅读时长 ≈ 65

线程池

基本组成

1、线程池管理器(ThreadPool):用于创建并管理线程池,包括 创建线程池,销毁线程池,添加新任务;
2、工作线程(PoolWorker):线程池中线程,在没有任务时处于等待状态,可以循环的执行任务;
3、任务接口(Task):每个任务必须实现的接口,以供工作线程调度任务的执行,它主要规定了任务的入口,任务执行完后的收尾工作,任务的执行状态等;
4、任务队列(taskQueue):用于存放没有处理的任务。提供一种缓冲机制。

阅读全文 »

Java虚拟机内存管理机制

发表于 2019-03-09 |
字数统计: 10.8k | 阅读时长 ≈ 38

整体结构

参考原文
image

阅读全文 »

设计模式:七大原则

发表于 2019-03-09 |
字数统计: 791 | 阅读时长 ≈ 2
  • 开闭原则
  • 依赖倒置原则
  • 单一职责原则
  • 接口隔离原则
  • 迪米特法则(最少知道原则)
  • 里氏替换原则
  • 合成/复用原则
阅读全文 »
1…45
le

le

50 日志
22 标签
GitHub
© 2019 le | Site words total count: 280.7k