私は、ユーザーの画像を含むユーザーの情報を保存する必要があるこのプロジェクトを行っています。それをブロブ画像としてデータベースに保存しています。「写真」が画像の列である場合、Webページの他の列をレンダリングする場合よりも、たとえば「render.column_name」の場合は正常に機能します。しかし、「render.photo」などの画像に対してこれを行うと、DB は Web ページで「jpa.blob.....」として何かを返します。DBに保存されているこの画像を表示する方法を教えてもらえますか?
質問する
897 次
1 に答える
3
画像データを提供するには、別のコントローラー メソッドが必要です。ファイルに関する何らかのメタ情報、つまり MIME タイプがカスタム エンティティにあると仮定すると、コントローラーは次のようになりますFileStore
。
public class ShowFile extends Controller {
public static void render(String id) {
FileStore fs = // fetch the file out of the DB using the id
notFoundIfNull(fs);
response.setContentTypeIfNotSet(fs.mimeType);
response.setHeader("Cache-Control", "public, max-age=31536000");
renderBinary(new ByteArrayInputStream(fs.content), fs.content.length);
}
}
img
このページでは、次のタグを使用してそのメソッドにリンクします。
<img src="@{ShowFile.render(image.id)}" />
于 2012-08-14T13:20:17.840 に答える