![](/img/trans.png)
[英]Java: How to retrieve all documents from specific bucket of couchbase server?
[英]How to flush Couchbase bucket from Java code?
每次运行单元测试之前,我都需要清除 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)但它在新版本中不存在。
有什么方法可以清除存储桶中的数据吗? 我可以通过获取文档的所有键然后将它们全部删除来删除,但我想使用更漂亮的方式。
实际上在2.x SDK中,您可以从Bucket
实例中获取BucketManager
,这将允许您像以前一样奇妙地调用flush()
;)
请注意,在社区v4.0中刷新并使用N1QL查询可能会有风险。 我的集成测试失败了,因为有些文档在几十次运行后(甚至在30分钟后)没有被索引。 删除文档更安全。
您可以使用REST API删除存储桶: http : //docs.couchbase.com/admin/admin/REST/rest-bucket-intro.html
使用 Couchbase Java SDK 3.x:
Cluster cluster = Cluster.connect(connectionString, username, password);
cluster.buckets().flushBucket(bucketName);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.