6

私はJavaに傾倒しています。

rpcを使用してハッシュマップをサーバーに転送する必要があります。

HashMap

Map<String, String> testMap = new HashMap<String, String>();
testMap .put("1", "abc");
testMap .put("2", "ezc");
testMap .put("3", "afc");
testMap .put("4", "cvc");
..

どうやってするか。

4

4 に答える 4

11

JacksonJSONプロセッサを見てください。特に、コードは次のようになります。

Map map = your map
ObjectMapper mapper = new ObjectMapper();
String json = mapper.writeValueAsString(map);

デバッグにきれいなJSON(複数行)が必要な場合は、次を使用します。

String json = mapper.defaultPrettyPrintingWriter().writeValueAsString(map);
于 2012-08-07T18:12:09.490 に答える
7

役立つ場合は、このリンクを参照してください。

http://www.mkyong.com/java/how-to-convert-java-map-to-from-json-jackson/

import com.fasterxml.jackson.databind.ObjectMapper;

ObjectMapper mapper = new ObjectMapper();
Map<String, String> testMap = new HashMap<String, String>(); 
testMap .put("1", "abc"); 
testMap .put("2", "ezc"); 
testMap .put("3", "afc"); 
testMap .put("4", "cvc"); 

      mapper.writeValue(new File("c:\\user.json"), testMap);
于 2012-08-07T18:08:27.770 に答える
3

GSONライブラリを試すこともできます。高速で使いやすいです。以下のラッパークラスを使用すると、作業がさらに簡単になります

public class ConvertJsonToObject {

    private static Gson gson = new GsonBuilder().create();

    public static final <T> T getFromJSON(String json, Class<T> clazz) {
        return gson.fromJson(json, clazz);
    }

    public static final <T> String toJSON(T clazz) {
        return gson.toJson(clazz);
    }
}

あなたがする必要があるのは

Map<String, String> testMap = new HashMap<String, String>();
testMap .put("1", "abc");
testMap .put("2", "ezc");
testMap .put("3", "afc");
testMap .put("4", "cvc");
String json = ConvertJsonToObject.toJSON(testMap);

そして、あなたは簡単にあなたのoriginal Object背中を取り戻すことができますother side

Map<String, String> newTestMap = ConvertJsonToObject.getFromJSON(json,Map.class);
于 2012-08-07T19:14:49.130 に答える
2

わかりません:HashMapはシリアル化可能であるため、クライアントとサーバー間で使用できる必要がありますか?

于 2012-08-07T19:55:50.637 に答える