获取MongoDB当前集合名称

时间:2013-01-21 16:46:19

标签: java spring mongodb spring-data nosql

我使用的是mongoDB + Java + SpringData。 没有它的名字,是否有可能获得当前的收藏?

谢谢!

2 个答案:

答案 0 :(得分:5)

这是我的解决方案(Java + SpringData)。

@Autowired
    private MongoTemplate mongoTemplate;    
DBCollection collection = mongoTemplate.getCollection(mongoTemplate.getCollectionName(MyDocument.class)));

答案 1 :(得分:0)

如果您希望直接与DBCollection进行互动,则应通过CollectionCallback<T>界面进行,并使用它:

mongoTemplate.execute(new CollectionCallback<Void>() {
  public Void doInCollection(DBCollection collection) throws MongoException {
    // Implement your code here
  }
});

使用回调的优势在于,您可能会将自己的代码中的MongoException转换为Spring的DataAccessException层次结构。