我正在尝试使用配置。
下面是配置类:
@Configuration
@EnableCouchbaseRepositories(basePackages = { "com.thalasoft.data.couchbase.repository" }, basePackageClasses = { BaseRepository.class })
public class CouchbaseConfiguration extends AbstractCouchbaseConfiguration {
private static Logger logger = LoggerFactory.getLogger(CouchbaseConfiguration.class);
@Autowired
private CouchbaseProperties couchbaseProperties;
@Override
protected List<String> getBootstrapHosts() {
return Collections.singletonList(couchbaseProperties.getHost());
}
@Override
protected String getBucketName() {
return couchbaseProperties.getBucketName();
}
@Override
protected String getBucketPassword() {
return couchbaseProperties.getBucketPassword();
}
}
我得到以下错误:
Invalid default: public abstract java.lang.Class org.springframework.data.couchbase.repository.config.EnableCouchbaseRepositories.repositoryBaseClass()
我也尝试过:
@EnableCouchbaseRepositories(basePackages = { "com.thalasoft.data.couchbase.repository" })
但我也得到了同样的错误。
然后,我还尝试了:
@EnableCouchbaseRepositories(basePackages = { "com.thalasoft.data.couchbase.repository" }, repositoryBaseClass = BaseRepository.class )
但我也得到了同样的错误。
我的Couchbase实例正在运行并可访问。
我使用Spring4.2.0. against与Spring Couchbase 2.0.0.M1对Couchbase 2.5.1企业版(buil-1083)
储存库是:
public interface AnswerRepository extends BaseRepository<Answer, String> {
@View(viewName = "answers_by_id")
public List<Answer> findById(String id);
Answer findByUuid(String uuid);
}
@NoRepositoryBean
public interface BaseRepository<T, ID extends Serializable> extends Repository<T, ID> {
}
发布于 2015-12-07 08:06:53
您必须使用CRUDRepository
作为基本接口,或者它的一个子接口。
此外,Spring Data Couchbase
要求有一个支持视图,以便CRUD操作能够工作。另外,要进行分页和排序(通过扩展PagingAndSortingRepository
)或从方法名进行查询派生,您还需要一个主N1QL
索引。
请注意,在即将发布的候选版本中,配置中将有一个选项可以自动创建所需的视图/索引,但是手动创建它们通常更安全,因为根据已经存储的文档数量,它可能是一个代价高昂的操作.
https://stackoverflow.com/questions/34134112
复制相似问题