如何在hazelcast imap中反序列化Apache Avro对象

时间:2020-06-01 04:57:13

标签: java json avro hazelcast-imap

创建了一个hazelcast IMap来根据字符串键存储序列化对象。可以使用apache avro进行序列化并将其放入hazelcast IMap中。使用avro模式为对象生成类。

存储后,尝试获取IMap数据以解析为json object。但是在控制台日志中出现以下语句,

Resolved [org.springframework.http.converter.HttpMessageNotWritableException: Could not write JSON: Not an array

这是我完成的步骤,

第一步:

DeliveryPrice deliveryPrice = new DeliveryPrice();
deliveryPrice.setTotalPrice(deliveryPackageDetails.getTotalPrice());
deliveryPrice.setDiscountAmount(deliveryPackageDetails.getDiscountAmount());
deliveryPrice.setTaxAmount(deliveryPackageDetails.getTaxAmount());
deliveryPrice.setUnitPrice(deliveryPackageDetails.getUnitPrice());
deliveryPrice.setCurrencyCode(deliveryPackageDetails.getCurrencyCode());
deliveryDetails.setPrice(deliveryPrice);
IMap<String, DeliveryDetails> deliveryDetailsIMap = hazelcastInstance.getMap("my-map");
deliveryDetailsIMap.put(deliveryPackageDetails.getDeliveryAddress(), deliveryDetails);

DeliveryPrice 是从apache avro生成的对象。

第二步:

@GetMapping(value = "/read-all-data")
public IMap<String, DeliveryDetails> readAllDataFromHazelcast() {
    IMap<String, DeliveryDetails> hazelcastMap = hazelcastInstance.getMap("my-map");
    return hazelcastMap;
}

我知道我做得很明显。但是我是hazelcastapache avro的新手。在IMap中进行调试时,我可以看到其中有一些数据。现在,我想获取所有这些IMap数据。 有什么建议可以解决这个问题。

0 个答案:

没有答案
相关问题