0

我正在尝试将 couchbase 查询的结果映射到 java 引用类型,到目前为止我还没有找到这样做的方法。如何将以下内容捕获为 java 引用类型:

N1qlQueryResult result = couchbaseBucket.query(
            N1qlQuery.simple("SELECT * FROM customers LIMIT 1"));

JsonObject cust = result.allRows().get(0).value();

如何将此“客户”转换为 java 对象?这样做的最佳方法是什么,couchbase SDK 不为此提供一些解决方案吗?

4

1 回答 1

0

昨天发布了一篇博文,向您展示了如何使用 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在服务类或任何地方使用实例化 aBuildingRepository并开始调用它的方法。Spring Data Couchbase 的完整文档可在 docs.spring.io 上找到

于 2018-02-02T01:17:29.423 回答