Java操作MongoDB gridfs

zhangxinmingsheng zhangxinmingsheng 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
Java操作的代码:

public static GridFSDBFile getById(Object id) {
DBObject query = new BasicDBObject("_id", id);
GridFSDBFile gridFSDBFile = gridFS.findOne(query);
return gridFSDBFile;
}

调用了这个方法进行文件下载:
GridFSDBFile gridFSDBFile = MongoGridFS.getById(id);
logger.info(String.format("%s,%s", ipString, fileMD5));
if (gridFSDBFile != null) {
renderBinary(gridFSDBFile.getInputStream(),
gridFSDBFile.getFilename());
}

获取文件的时候
抛出异常:
-----------------------------
Caused by: com.mongodb.MongoException: can't find a chunk! file id: 3be1e554ff600ddb2fa8f90cf68e9d33 chunk: 0
at com.mongodb.gridfs.GridFSDBFile.getChunk(GridFSDBFile.java:102)
at com.mongodb.gridfs.GridFSDBFile$MyInputStream.read(GridFSDBFile.java:154)
at com.mongodb.gridfs.GridFSDBFile$MyInputStream.read(GridFSDBFile.java:144)
at play.mvc.results.RenderBinary.apply(RenderBinary.java:169)
... 27 more
-------------------------------

请教大侠帮忙看看什么问题,该怎么解决?

使用的java驱动mongo的 jar 是 mongo-java-driver.2.11.2.jar

谢谢!

...全文
评论 2
收藏 已收藏
分享
返回顶部
zhangxinmingsheng
MongoDB 1,797 成员 1,466 内容