我的问题与下面的问题相同,只是我想使用java驱动程序执行此操作。
create own files_id in mongo GridFs using PHP
以上针对Java驱动程序的问题中给出的googlegroup链接实际上是针对C#驱动程序的。检查Java驱动程序GridFS api,似乎没有办法为GridFS文件集合设置_id字段。
有没有办法用Java驱动程序执行此操作,如果我必须切换到使用其他驱动程序,会产生许多不必要的混乱?
答案 0 :(得分:0)
GridFSInputFile类的Put方法用于向JSON对象添加其他字段。因此,如果您添加默认情况下为ObjectId的“_id”字段,它将覆盖ObjectId。
我在版本2.2.3上尝试了以下代码,但它确实有效。
GridFSInputFile gif = gridfs.createFile(new File("c:\\image.jpg"));
gif.put("_id", 1234567);
gif.save();
文件集合包含1234567。 chunks集合与file_id具有相同的值。