2
I have an entity called Product that has only Title, Price and wayImage, the latter guards the way in which the product image is saved. Upon receiving this form data my service executes this code:
public void addProduto(Produto produto, MultipartFile imagem) {
String caminho = "/img/" + produto.getTitulo().replaceAll(" ", "") + ".jpg";
produto.caminhoImagem = caminho;
UsingFileUtils.salvarImagem(caminho, imagem);
repo.save(produto);
}
Remove all title spaces and send to the Usingfileutils class that does this:
public static void salvarImagem(String caminho, MultipartFile imagem) {
File file = new File("src/main/resources/static"+caminho);
try {
FileUtils.writeByteArrayToFile(file,imagem.getBytes());
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
When doing this, it is redirected to the page with all products, but the image is not rendered, only if I restart the server, then it appears normally. The listing html looks like this:
<div class="card" style="width: 18rem;" th:each="produto : ${produtos}">
<img class="card-img-top" th:src="@{${produto.caminhoImagem}}">
<div class="card-body">
<h5 class="card-title" th:text="${produto.titulo}"></h5>
<p class="card-text" th:text="${produto.preco}"></p>
<a href="#" class="btn btn-primary">Quero</a>
</div>
</div>
What can I do to not have to restart the server to render the images?