上下文
如果我连接到mongodb它如何描述mongo java驱动程序文档,我如何获得一个新的GridFS对象?此签名没有构造函数(MongoDatabase db,String bucket)。
MongoCredential credential = MongoCredential.createCredential(_userDb, _database, _passDb.toCharArray());
MongoClient mongoClient = new MongoClient(new ServerAddress(_host, _port), Arrays.asList(credential));
MongoDatabase mongoDatabase = mongoClient.getDatabase(_database);
我想避免使用弃用的方法。似乎无法进行铸造
GridFS gfsPhoto = new GridFS((DB) mongoDatabase, "photos");
答案 0 :(得分:3)
使用mongoClient.getDB(_database)
。新API中的GridFS支持没有制定3.0时间表的时间表,但应该在3.1中。现在,您使用旧的DB
API非常安全。这是你唯一的选择,真的。
答案 1 :(得分:1)
可以提一下。 MongoDB 3.2版本已改为GridFSBucket。花了一些时间找到新的解决方案。
// Create a gridFSBucket using the default bucket name "fs"
GridFSBucket gridFSBucket = GridFSBuckets.create(myDatabase);
// Create a gridFSBucket with a custom bucket name "files"
GridFSBucket gridFSBucket = GridFSBuckets.create(myDatabase, "files");
http://mongodb.github.io/mongo-java-driver/3.2/driver/reference/gridfs/