使用 gridFSDBFile 有一種簡單的方法可以做到這一點,但現在不再如此。//This used to return a GridFSDBFile type. Returns GridFSFile now.GridFSFile gridFsFile = gridFsTemplate.findOne(new Query(Criteria.where("_id").is(idTemp)));//And would be done this way. Not anymore.gridFSFile.writeTo(outputstream)主要目標是返回保存在數據庫中的圖像以將其顯示在 html 頁面上,如下所示。response.getOutputStream().write(outputstream.toByteArray());response.getOutputStream().close();
2 回答

猛跑小豬
TA貢獻1858條經驗 獲得超8個贊
我在將 spring 1.x 遷移到 2.x 時遇到了同樣的問題。這是修復。
InputStream iStream = gridFsTemplate.getResource(gridFSFile).getInputStream(); byte[] bytes = IOUtils.toByteArray(iStream);

桃花長相依
TA貢獻1860條經驗 獲得超8個贊
我可能遲到了,但您可以將 InputStream 鏈接到 OutputStream。
因此,您可以使用以下內容:
GridFSFile gridFsFile = gridFsTemplate.findOne(...); gridFsTemplate.getResource(gridFsFile).getInputStream().transferTo(outputStream);
添加回答
舉報
0/150
提交
取消