将图像上传到服务器或数据库?

时间:2011-08-14 23:52:08

标签: hibernate spring web-applications java-ee

我正在尝试为Web应用程序的用户实现“配置文件页面”。 我希望用户能够为他们的个人资料上传图片。

我的问题是如何实施?

我应该将数据库中的图像作为blob上传,还是应该在服务器中上传图像并将路径存储在数据库中?

对于用户个人资料,图像的最佳尺寸应该是多少?

我使用以下内容。 1. Mysql 5.5.11 2.春天3 3.休眠

我们将不胜感激。

此致 Adofo

3 个答案:

答案 0 :(得分:0)

Mysql中blob数据类型的目的是完成“在数据库上存储图像”。如果您的图像数量较少(比方说< 100),我会说,将其存储在数据库中。如果没有,请尝试将图像存储在目录中(在WEB_ROOT下)并将您的Web服务器配置为直接提供图像而不冻结数据库(通过检索)。

希望有所帮助..

答案 1 :(得分:0)

将图像存储为服务器上的文件,并将图像ID或路径存储在数据库中。如果以这种方式执行此操作,则必须为删除的用户进行文件清理工作。 JPEG图像大小为40-80K是“个人资料图片”的合理目标。对此的真正限制是您的服务器性能和流量。

答案 2 :(得分:0)

我听说过存储来自这两方面的图像的论据,并且过去一直在想自己。我个人喜欢存储在数据库中的想法。我觉得错误的空间较小(即,意外删除图像目录位置,图像/数据库条目变得不同步。

我认为不超过100或150像素宽的个人资料图片就足够了,72 dpi。您可以要求上传为这些尺寸,也可以接受任何操作,并通过“预览”在新尺寸中保存图像的方式对其进行操作。

只是我的想法。