2015-02-06 28 views
0

我正在使用Rest API客戶端用於Hazelcast。存儲在MAP中的對象是二進制格式。Hazelcasl Rest API二進制對象

如何從Rest客戶端查看這些對象?

+0

你說的二進制是什麼意思?你的序列化格式是什麼? – 2015-02-06 22:26:49

回答

1

我使用AsyncHTTPClient庫作爲其餘客戶端。 我假設你使用標準的Java序列化和類Person實現可序列化。在Hazelcast

public class MyHazelcastClient { 
    public static void main(String[] args) { 
     HazelcastInstance hzClient = HazelcastClient.newHazelcastClient(); 
     Person person = new Person("Vik"); 
     final IMap<Object, Object> hzClientMap = hzClient.getMap("default"); 
     hzClientMap.set("key1", person); 
     hzClient.shutdown(); 
    } 
} 

閱讀對象從Hazelcast

存儲對象使用REST api

public class RestClient { 
     public static void main(String[] args) 
      throws ExecutionException, InterruptedException, IOException, ClassNotFoundException { 
      AsyncHttpClient asyncHttpClient = new AsyncHttpClient(); 
      Response r = asyncHttpClient.prepareGet("http://127.0.0.1:5701/hazelcast/rest/maps/default/key1") 
        .execute().get(); 
      ObjectInputStream objectInputStream = new ObjectInputStream(
       new ByteArrayInputStream(r.getResponseBodyAsBytes())); 
      final Person o = (Person) objectInputStream.readObject(); 
      System.out.println(o.toString()); 
     } 
    } 

我希望它能幫助!

乾杯,

維克

+1

是否有可能通過瀏覽器發送休息請求並讓我們說任何自定義對象的json序列化版本? – Tomask 2016-10-27 15:38:11