gpt4 book ai didi

java - Spring boot 不提供 src/main/resources/public 目录中的某些图像

转载 作者:行者123 更新时间:2023-12-02 11:00:01 24 4
gpt4 key购买 nike

我正在尝试使用 Spring Boot、thymeleaf 和 mysql 开发一个小型 Web 应用程序,用于学习目的。
我正在使用 Eclipse IDE

用户可以将图像上传到应用程序,我的 Controller 类将图像存储在 src/main/resources/public/images 文件夹中,并将其 URL 存储在数据库中。

问题是,尽管 Controller 保存的图像存在于 src/main/resources/public/images 目录中,但它们在 public 目录中无法直接看到 Eclipse,因此,当从所提供的网页引用时,这些图像不会显示。

我手动复制的一些图像粘贴到 public/images<Eclipse 中的/code> 文件夹。(为此,实际上我必须将图像移动到另一个目录,因为无法从同一文件夹复制并粘贴到同一文件夹中)
这些图像在所提供的网页中呈现。

Controller 保存的其他图像,即使它们存在于同一目录中,也不能直接从 Eclipse 中看到IDE
并且它们不会在提供的页面中呈现。


这是 Eclipse 中的 Directory View ,所有这些图像都在所提供的网页中正确呈现

enter image description here



这是文件系统中同一目录的 View ,它包含许多在 Eclipse 中无法直接看到的图像。

enter image description here

当我将这些图像包含在网页中时,即使它们与其他图像位于完全相同的文件夹中,它们也不会呈现。

如何解决这个问题?

最佳答案

当您使用 IDE 运行 Spring Boot 或普通 Spring 项目时,它会将所有内容捆绑在一个 war 中,然后为该 bundle 提供服务,因此无需重新启动服务器或重新运行应用程序,Eclipse 就不会加载图像。

这与 spring boot 无关。这是因为 Eclipse IDE 的原因,正如您所知,如果您将一张图像粘贴到文件夹目录中,但如果不重新启动服务器或重新运行应用程序,图像将无法加载。

我的建议是将图像存储在部署的文件夹目录之外的任何目录中,并且访问它们不会出现任何问题。

我已经在 tomcat 文件夹中完成了此操作,没有任何问题。

关于java - Spring boot 不提供 src/main/resources/public 目录中的某些图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51408358/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com