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

时间:2018-07-18 18:01:44

标签: java spring eclipse spring-boot

我正在尝试使用Spring Boot,thymeleaf和mysql开发一个用于学习目的的小型Webapp。
我正在使用CKEDITOR.on('instanceReady', function (e) { if (e.editor.contextMenu) { e.editor.removeMenuItem('paste'); } });

用户可以将图像上传到应用程序,“我的控制器”类将图像存储在Eclipse IDE文件夹中,并且将其src/main/resources/public/images存储在数据库中。

问题是,尽管控制器保存的图像位于URL目录中,但从src/main/resources/public/images的{​​{1}}目录中却无法直接看到它们,结果是从所服务的网页中进行引用时,这些图像不会显示。

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

控制器保存的其他图像,即使它们存在于同一目录中,也无法从{{1}直接看到},它们不会显示在所投放的页面中。


这是日食中的public/images视图,所有这些图像均在提供的网页中正确呈现

enter image description here



这是文件系统中同一目录的视图,并且包含许多在eclipse中不直接可见的图像。

enter image description here

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

如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

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

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

我的建议是将图像存储在已部署文件夹目录以外的任何目录中,并进行访问,而不会出现任何问题。

我已经在tomcat文件夹中完成了此操作。