前言
由于现在的大部分文章都是以富文本的方式进行编辑,所以就造成传到后端的都是带着html标签的字符串,甚至会携带上css和js的代码,所以我们应该如何解决这种问题呢
解决思路
一、在富文本内容传入数据库时转换编码格式
数据库的字段可以设为text或者可以用blob保存二进制数据
String text = "<p><b>xxx</b></p><p>xxx</p><p><br></p><p><i><u>java</u></i></p><p>富文本</p><p><br></p>";
//将富文本中的特殊编码转换
String saveMysql = HtmlUtils.htmlEscapeHex(text);
//这时候将数据存储到数据库
//取出时将富文本编程转换成html
String returnHtml = HtmlUtils.htmlUnescape(s);
但是这种方式能解决text里面带有的html标签,将其变为转义符存储。
二、将文章用文件方式存储,数据库记录其路径
这种方式就是将富文本的html文件传入磁盘或minIO等云存储中,然后在数据库添加字段保存其路径。