如何从Java代码中清除Couchbase存储桶?

时间:2015-08-29 15:21:25

标签: java couchbase

我需要每次在单元测试运行之前清除Couchbase存储桶。我使用Java SDK> 2.0版。在以前的版本中,我发现了这个很棒的方法http://www.couchbase.com/autodocs/couchbase-java-client-1.1.1/com/couchbase/client/ClusterManager.html#flushBucket(java.lang.String),但它在新版本中并不存在。

有没有办法清除存储桶中的数据?我可以通过获取文档的所有键然后删除它们来删除,但我想使用更漂亮的方式。

4 个答案:

答案 0 :(得分:6)

实际上在2.x SDK中,您可以从BucketManager实例中获取Bucket,这样您就可以像以前一样精彩地调用flush();)

答案 1 :(得分:1)

请注意,在社区v4.0中刷新并使用N1QL查询可能会有风险。我的集成测试失败了,因为有些文档在几十次运行后(甚至在30分钟后)没有被索引。删除文档更安全。

答案 2 :(得分:0)

您可以使用REST API删除存储桶: http://docs.couchbase.com/admin/admin/REST/rest-bucket-intro.html

答案 3 :(得分:0)