0
私のアプリケーションにSpringbootと組み込みサーバー(Jetty)を使用しています。イメージをアップロードしてimgタグをリフレッシュ
画像をアップロードして、HTMLページを再読み込みして新しい画像をimgタグに表示したいとします。
Thファイルがアップロードされ、アプリケーションのフォルダに保存されます。しかし、私がページをリロードすると、私は新しいイメージを見ることができません。
私の組み込みサーバは私の新しいファイルを見ることができないようです。プロジェクトを再構築すると、新しいファイルが表示されます。私はここに私のプロジェクト
をrebuiltingことなく、自動的に私の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";
}
あなたのPictureUploadControllerクラスを見ることができますか? –
はい投稿を変更しました –