【问题标题】:Using Couchbase SDK in Java在 Java 中使用 Couchbase SDK
【发布时间】:2018-02-02 00:03:35
【问题描述】:
我正在尝试将 couchbase 查询的结果映射到 java 引用类型,到目前为止我还没有找到这样做的方法。
如何将以下内容捕获为 java 引用类型:
N1qlQueryResult result = couchbaseBucket.query(
N1qlQuery.simple("SELECT * FROM customers LIMIT 1"));
JsonObject cust = result.allRows().get(0).value();
如何将此“客户”转换为 java 对象?这样做的最佳方法是什么,couchbase SDK 没有为此提供一些解决方案吗?
【问题讨论】:
标签:
java
spring-boot
couchbase
spring-data-couchbase
couchbase-java-api
【解决方案1】:
有一个blog post published yesterday 向您展示了如何使用 couchbase spring-boot 和 spring 数据执行此操作。
我根本不是 Java 专家,但看起来你是从创建这样的实体类开始的:
@Document
@Data
@AllArgsConstructor
@NoArgsConstructor
@EqualsAndHashCode
public class Building {
@NotNull
@Id
private String id;
@NotNull
@Field
private String name;
@NotNull
@Field
private String companyId;
// ... etc ...
}
然后,创建一个存储库类。
@N1qlPrimaryIndexed
@ViewIndexed(designDoc = "building")
public interface BuildingRepository extends CouchbasePagingAndSortingRepository<Building, String> {
List<Building> findByCompanyId(String companyId);
// ... etc ...
}
最后,您可以在服务类或任何地方使用@Autowired 来实例化BuildingRepository 并开始调用其上的方法。 The full documentation for Spring Data Couchbase is available on docs.spring.io