上传的图片不显示在网页上
Posted
技术标签:
【中文标题】上传的图片不显示在网页上【英文标题】:Uploaded images not showing up on web page 【发布时间】:2021-02-21 21:10:41 【问题描述】:我正在尝试在我的 Springboot/Thymeleaf Web 应用程序上设置用户的个人资料图片和横幅,我正在从我的系统运行和托管该应用程序。
上传工作正常 - 文件已正确写入其文件夹,其文件路径以字符串形式保存到 mysql 数据库。
当尝试从文件路径显示相同的图像时,它会抛出 404 并表示无法加载图像。
我用 Springboot 在控制器中设置了文件名和路径:
byte[] bytes = file.getBytes();
int extIndex = file.getOriginalFilename().length() - 4;
String newFileName = businessId + file.getOriginalFilename().substring(extIndex);
Path path = Paths.get("c://Users//farru//git//CapstoneNAFJ//" +
"CapstoneNAFJ//src//main//resources//static//img//" + newFileName);
Files.write(path, bytes);
String imgPath = "img/" + newFileName;
currBusiness.setBanner(imgPath);
businessRepository.save(currBusiness);
然后我尝试使用 Thymeleaf 编辑 img 标签的来源
<img th:src="@$business.banner" >
奇怪的是:它有时有效,但似乎没有规律。
更奇怪的是,在我从文件夹中删除图像后,如果我进入网页并使用 Inspect Element 更改 img 标签的 src 属性,图像将完美显示。每一个,尽管我清除了我的缓存(并重新编译代码,删除和重建 MySQL 表等)
【问题讨论】:
<img>
标签是什么样的? src
路径是否正确?当您使用此网址“在新标签页中打开”时,您会得到什么吗?
对不起,@tadman!原来问题不在于代码本身。感谢您尝试提供帮助!
【参考方案1】:
事实证明这不是我的代码的问题,它只是 eclipse 中的一个设置,这意味着 IDE 不会检查项目文件夹的更新(在这种情况下,是添加的图像文件)。
通过检查首选项 => 常规 => 工作区 => 使用本机挂钩或轮询刷新
【讨论】:
很高兴发布答案而不是删除这个答案,让这些知识随着时间的流逝而消失。有一天可能会帮助别人。以上是关于上传的图片不显示在网页上的主要内容,如果未能解决你的问题,请参考以下文章