2

我使用 java、tomcat、jsf 和 primefaces

我的产品表中有一个“图像”字段,我想问你哪个更好:将图像保存在数据库中或服务器的一个目录中

如果第二种情况最好,请向我解释一下如何管理它(我从来没有机会遇到这种情况)

先感谢您

4

1 回答 1

0

是否要将图像二进制文件保存在数据库中将图像文件保存在服务器目录中取决于您的需要。

永无止境的辩论仍在继续,您可以通过几个键轻松找到它。

以下是我的做法(第二种方法),它从不让我失望:
假设您正在构建一个电子商务网站,并希望托管卖家上传的图片,例如产品图片并稍后显示。

  1. 将上传的图像文件物理保存在您的服务器上假设目录是/baseFolder/,文件的完整路径是/baseFolder/path/to/image.jpg
  2. 在 Tomcat 中添加一个虚拟主机,以便您的http://localhost:8080/imageBase/指向物理目录/baseFolder/。还有许多其他方法可以制作这种映射。
  3. 将相对路径/path/to/image.jpg存储在数据库中。所以当你想展示它时,你可以简单地说:<img src="#{webappRoot}/baseFolder/#{pathRetrievedFromDatabase}"/>. 在这种情况下,它将是<img src="#{webappRoot}/baseFolder/path/to/image.jpg"/>

当然,有很多不同的方法可以实现相同的目标。这是我能想到的最简单的方法来解释它是如何管理的。
希望能帮助到你。

于 2016-03-26T04:55:50.010 回答