温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

springboot后端存储富文本内容的方法是什么

发布时间:2023-04-17 15:56:27 来源:亿速云 阅读:242 作者:iii 栏目:开发技术

这篇文章主要讲解了“springboot后端存储富文本内容的方法是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“springboot后端存储富文本内容的方法是什么”吧!

    基本知识

    springboot:后端快速应用开发框架。

    tinymce:简单的富文本编辑器。

    base64:Base64是网络上最常见的用于传输8Bit字节码的编码方式之一,Base64就是一种基于64个可打印字符来表示二进制数据的方法。编码规则:把3个字节变成4个字节;每76个字符加一个换行符;最后的结束符也要处理。对于图片来说,base64 编码就是可以将一副图片数据编码成一串字符串,使用该字符串代替图像地址。

    基本思路

    获取tinymce富文本编辑器的内容(html形式),通过axios发送到后端,后端接收到内容后直接存储到数据库。

    步骤

    1、前端配置好tinymce富文本编辑器

    我配置好的富文本编辑器效果如下:

    springboot后端存储富文本内容的方法是什么

    2、获取富文本编辑器的内容,并发送至后端

    注意这里有一个问题就是图片该如何传输,我这里是直接获取base64格式的图片后直接上传,这是一个比较简单的方法。

    html内容如下:

    springboot后端存储富文本内容的方法是什么

    可以看到图片的内容极其长,这是base64格式编码导致的,不过好处是当前端请求富文本内容时,如果一篇文章中有很多图片的话,浏览器不用多次发起图片请求,而是图片和文字一起发送到了前端。

    前端通过axios将富文本发送给后端的代码:

     axios({
            method: 'post',
            url: 'http://localhost:8081/users/news',
            data: {
              "categoryId": 1,
            "userId": 1,
            "title": "震惊!!60岁老头竟然。。。。",
            "context": tinymce.activeEditor.getContent()
            }
          }).then((res)=>{
            console.log(res.data)
          })

    还有一个方法是图片内容和文字内容分开上传,内容依旧是html格式,但是“<img src=“图片路径”>”,这里的图片路径需要重写为图片上传后存储在服务器上的路径。

    3、后端在数据库创建表

    注意:存储富文本的内容的数据类型为longtext,防止内容过长无法保存

    springboot后端存储富文本内容的方法是什么

    存储结果如下:

    springboot后端存储富文本内容的方法是什么

    4、后端编写接收富文本内容的接口

    @ApiOperation("发表新闻")
        @PostMapping("/news")
        public Result updateNews(@RequestParam Long userId,@RequestParam Integer categoryId,@RequestParam String title,@RequestParam String context){
            System.out.println("发表新闻"+context);
            Result result = new Result();
            News news = new News(categoryId,userId,title,context);
            boolean flag = newsService.save(news);
            if (!flag){
                result.setFlag(false);
                return result;
            }
            result.setFlag(true);
            return result;
        }

    感谢各位的阅读,以上就是“springboot后端存储富文本内容的方法是什么”的内容了,经过本文的学习后,相信大家对springboot后端存储富文本内容的方法是什么这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!

    向AI问一下细节

    免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

    AI