我正在我的应用程序中使用Springboot和嵌入式服务器(Jetty)。
我想上传图片并重新加载我的html页面,以在img标签中显示新图片。
文件上传得很好并保存在我的应用程序的文件夹中。但是当我重新加载页面时,我无法看到我的新图像。
我的嵌入式服务器似乎无法看到我的新文件。当我重建我的项目时,我可以看到新文件。
如何在不重建项目的情况下自动刷新我的img标签
这是我的html页面
<img th:src="@{/images/scan/}+${signatureScannedImg}" style="margin-bottom: 30px"/>
<form th:action="@{/upload-signature-scan}" th:method="post" enctype="multipart/form-data">
<table>
<tr><td><input type="file" name="file" /></td></tr>
<tr><td><input type="hidden" id="scannedFile" name="scannedFile" value="signature" /></td></tr>
<tr><td><input type="hidden" id="idClient" name="idClient" th:value="${clientView.id}" /></td></tr>
<tr><td><input type="submit" value="Enregistrer" /></td></tr>
</table>
</form>
我的控制器方法是:
@RequestMapping(value = "/upload-signature-scan", method = RequestMethod.POST)
public String handleFileUpload(
@RequestParam("file") MultipartFile file,
@RequestParam("idClient") Long idClient,
@RequestParam("scannedFile") String scannedFile,
RedirectAttributes redirectAttributes) {
Path rootLocation= Paths.get("src/main/resources/static/images/scan");
try {
Files.copy(file.getInputStream(), rootLocation.resolve("image.jpg"));
} catch (IOException e) {
e.printStackTrace();
}
redirectAttributes.addAttribute("id", idClient);
redirectAttributes.addFlashAttribute("id", idClient);
redirectAttributes.addFlashAttribute("signatureScannedImg", "image.jpg");
return "redirect:/client/{id}/details";
}