Java 保存图片到数据库时,为什么要对图片进行base64编码

我在网上总能看到相关的代码:保存图片到数据库中时,总会对图片进行Base64编码。如:http://blog.csdn.net/hfhwfw/article/detail... 我在网上总能看到相关的代码:保存图片到数据库中时,总会对图片进行Base64编码。如:http://blog.csdn.net/hfhwfw/article/details/5544408 。我在数据库中保存图片的字段类型为 Blob,我直接保存图片相应的字节数组到 Blob即可。不明白为什么还要对图片的字节数组做 Base64编码。 展开
 我来答
QQMSD8
2016-05-17 · 知道合伙人软件行家
QQMSD8
知道合伙人软件行家
采纳数:6788 获赞数:13239
没有做不到,只有想不到,帮助别人的同时也是对自己的提升

向TA提问 私信TA
展开全部
首先这是一种SB做法,图片保存到数据库这个很浪费数据库资源, 通常情况下图片等文件都是用ftp服务器来存储文件的. 为什么要用base64进行编码是因为, base64会把文件这个文件转换成字符串, base64编码后得到的是一组字符串, 为什么要用blob类型, 因为这个类型可以存储4GB数据, 数据库中普通的 varchar varchar2 text等类型都有长度的限制
刷新遮旧L
2016-05-17 · TA获得超过1638个赞
知道小有建树答主
回答量:364
采纳率:50%
帮助的人:107万
展开全部
保密和字符处理
追问
那怎么保存到 Blob 类型字段中?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
LMLU23
2016-05-17 · TA获得超过901个赞
知道小有建树答主
回答量:373
采纳率:0%
帮助的人:365万
展开全部
因为二进制数据无法使用格式化的传输(如xml、json),而Base64提供了剔除特殊字符(如<、/)的转换,所以有时候需要传输二进制的时候就考虑进行Base64编码。
考虑一个接口可能会同时返回一个图片的数据,加上这个图片的说明,使用json返回的时候就必须要对图片信息进行Base64编码。否则,你只能返回一个url,然后让客户端再使用这个url获取图片信息。
上面只是讨论Base64的用处,至于存储在数据库是什么无所谓。本人还是倾向于原始的二进制数据,毕竟如果只有一个地方存储这些数据,那么保存原始数据能保证不会失去任何精度。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式