找回密码
 立即注册

QQ登录

只需一步,快速开始

jcy123 讲师达人认证 活字格认证

金牌服务用户

14

主题

156

帖子

1636

积分

金牌服务用户

积分
1636

活字格认证圣诞拼拼乐讲师达人

jcy123 讲师达人认证 活字格认证
金牌服务用户   /  发表于:2021-2-4 14:29  /   查看:5345  /  回复:6
1金币
如题将图片以base64流的方式存储在数据库中,但是长度极长,度娘了一下没找到他的优缺点的,有大佬指导下这个图片以什么方式存在数据库里最佳呢
附件: 您需要 登录 才可以下载或查看,没有帐号?立即注册

最佳答案

查看完整内容

建议直接用路径.维护也方便.

7 个回复

倒序浏览
最佳答案
最佳答案
zsdtylj
中级会员   /  发表于:2021-2-4 14:29:42
来自 4#
建议直接用路径.维护也方便.
回复 使用道具 举报
zsdtylj
中级会员   /  发表于:2021-2-4 14:51:24
2#
数据库有这个功能就肯定是合适的.但是实际应用还是要看业务需求和使用场景.
回复 使用道具 举报
jcy123讲师达人认证 活字格认证
金牌服务用户   /  发表于:2021-2-4 15:01:37
3#
zsdtylj 发表于 2021-2-4 14:51
数据库有这个功能就肯定是合适的.但是实际应用还是要看业务需求和使用场景.

这个业务场景是审单上传图片,量可能会比较大,在把它转为base64流会不会造成数据库服务器的压力增加
回复 使用道具 举报
Joe.xu讲师达人认证 悬赏达人认证 活字格认证
超级版主   /  发表于:2021-2-4 16:25:49
5#
您好,目前业界存储图片有两种做法:
1、 把图片直接以二进制形式存储在数据库中
一般数据库提供一个二进制字段来存储二进制数据。比如mysql中有个blob字段。oracle数据库中是blob或bfile类型
2、 图片存储在磁盘上,数据库字段中保存的是图片的路径。
给您分享个对这两种方案的分析链接
https://blog.csdn.net/javamoo/article/details/61410509

点评

好的,研究了一下还是路径最合适了  发表于 2021-2-4 16:30
回复 使用道具 举报
jcy123讲师达人认证 活字格认证
金牌服务用户   /  发表于:2021-2-4 16:26:38
6#
最后经过实验和度娘还是用路径显示比较合适现在的业务场景,对于base64流的优缺点我从网上搜了一些供大家参考
图片转换成base64格式的优缺点
1. 优点
(1)base64格式的图片是文本格式,占用内存小,转换后的大小比例大概为1/3,降低了资源服务器的消耗;
(2)网页中使用base64格式的图片时,不用再请求服务器调用图片资源,减少了服务器访问次数。
(3)base64编码的字符串,更适合不同平台、不同语言的传输;
(4)算法是编码, 不是压缩, 编码后只会增加字节数,但是算法简单, 几乎不会影响效率,算法可逆, 解码很方便, 不用于私密信息通信;
(5)解码方便, 但毕竟编码了, 肉眼还是不能直接看出原始内容;
2. 缺点
(1)base64格式的文本内容较多,存储在数据库中增大了数据库服务器的压力;
(2)网页加载图片虽然不用访问服务器了,但因为base64格式的内容太多,所以加载网页的速度会降低,可能会影响用户的体验。
(3)base64无法缓存,要缓存只能缓存包含base64的文件,比如js或者css,这比直接缓存图片要差很多,而且一般HTML改动比较频繁,所以等同于得不到缓存效益。

回复 使用道具 举报
Joe.xu讲师达人认证 悬赏达人认证 活字格认证
超级版主   /  发表于:2021-2-4 16:31:15
7#
jcy123 发表于 2021-2-4 16:26
最后经过实验和度娘还是用路径显示比较合适现在的业务场景,对于base64流的优缺点我从网上搜了一些供大家参 ...

感谢楼主的无私分享,相信能帮助到很多格友
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部