0

データベースからの blob タイプの画像を読み込もうとしています。コントローラーの私のメソッド。画像ファイルのみがJSPに表示されています

@RequestMapping(value = "/showDetails")
public ModelAndView showDetails(@RequestParam("doc") int id,
        HttpServletResponse responce) {
    ModelAndView mView = new ModelAndView();
    File file = documentDao.getFileDetail(id);
    byte[] bytes = null;
    try {
        OutputStream op = responce.getOutputStream();
        int length = (int) file.getContent().length();
        bytes = file.getContent().getBytes(1, length);
        op.write(bytes);
        op.flush();
        op.close();
        responce.setContentType("image/gif");
        mView.addObject("image", op);
    } catch (Exception e1) {
        e1.printStackTrace();
    }

    mView.addObject("file", file);
    mView.setViewName("filedetails");
    return mView;
}

私のコントローラークラスの上記のメソッド。そして、JSPでテキストだけでなく画像もレンダリングしたい。しかし、ブラウザには画像しかありません。

4

1 に答える 1

1

Springでは(より正確にはサーブレットで)この方法でそれを行うことはできません。2つの異なるコントローラーを作成します。1つは画像を提供し、もう1つはテキスト付きのJSPページを返します。ページで画像を取得するには、タグのsrc属性の値を適切に設定しますimg。最初のコントローラーを指している必要があります。

于 2012-10-27T20:32:10.883 に答える