我在我的应用程序中使用spring-data-couchbase:2.0.0.RC1,但我有一些遗留代码依赖于Bucket对象并直接使用它 . 有没有办法从spring-data-couchbase获取Bucket对象?我在文档中找到了这个http://docs.spring.io/spring-data/couchbase/docs/2.0.0.RC1/reference/html/#couchbase.template但是无法弄清楚,如何在我的应用程序中配置它 .
我的spring配置对象如下......
@Configuration
public class SpringCouchbaseConfig extends AbstractCouchbaseConfiguration {
@Value("${scheduled.task.couchbase_sync.host}")
String host;
@Value("${scheduled.task.couchbase_sync.bucket}")
String bucket;
@Override
protected List<String> getBootstrapHosts() {
return Arrays.asList(this.host);
}
@Override
protected String getBucketName() {
return this.bucket;
}
@Override
protected String getBucketPassword() {
return "";
}
@Override
protected CouchbaseEnvironment getEnvironment() {
return DefaultCouchbaseEnvironment.builder()
.connectTimeout(TimeUnit.SECONDS.toMillis(10))
.computationPoolSize(6)
.build();
}
@Bean(name = "org.springframework.data.couchbase.core.convert.customConversions")
public CustomConversions customConversions() {
return new CustomConversions(Collections.emptyList());
}
}
1 回答
如果您只配置一个
Bucket
,AbstractCouchbaseConfiguration
将声明@Bean
名为couchbaseBucket
的Bucket
类型,以便您可以在需要的地方自动装配它:如果您有
CouchbaseTemplate
的引用(例如,也可以在某处自动连接),您也可以通过调用getCouchbaseBucket()
轻松获得支持Bucket
.