mib*_*tec 6 java spring mongodb
在我之前有很多人在stackoverflow上我想为我的mongodb应用程序做junit-tests.为此,我让一个实例运行,所以我的测试可以连接.但我想确保数据库在开始测试时处于空状态.
因为我正在使用spring-mongodb,spring-test和所有有趣的弹簧 - 我希望找到一个配置为我做这个,直到现在成功.
任何人都可以给我一个如何以干净的方式实现这一点的提示.我的想法是一个InitializingBean,它为我做了这个.但我对这个解决方案并不满意.有什么建议?
试试这个:
@Autowired
org.springframework.data.mongodb.core.MongoTemplate mongoTemplate;
.....
mongoTemplate.getDb().dropDatabase();
Run Code Online (Sandbox Code Playgroud)
mongoTemplate.getDb().dropDatabase();
如果您不使用索引,可以提供帮助。
如果通过 spring-data-mongodb 使用索引,例如@Index
注释,dropDatabase()
也会删除索引。
我的解决方案是清理文档:
private void cleanUp() {
for (String collectionName : mongoTemplate.getCollectionNames()) {
if (!collectionName.startsWith("system.")) {
mongoTemplate.getCollection(collectionName).remove(new BasicDBObject());
}
}
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
6285 次 |
最近记录: |