㈠ java 怎麼把map轉為json
①如果你是maven工程,添加下面依賴:
㈡ Map轉json數據出現順序亂的問題
#Map轉json數據出現順序亂的問題,如果需要保持順序,可以使用JSONObject 對象的toString()方法;
public static void main(String[] args) {
Map<String, String> map = new LinkedHashMap<String, String>();
map.put("3", "ccccc");
map.put("1", "aaaaa");
map.put("2", "bbbbb");
map.put("4", "ddddd");
System.out.println("默認自動排序");
System.out.println(ResultVOUtil.success(map));
輸出結果:
自動排序
{"msg":"成功","code":"0","data":{"1":"aaaaa","2":"bbbbb","3":"ccccc","4":"ddddd"}}
//////////////////////////////////解決方案/////////////////////////////////////////////////////
JSON json = JSONUtil.parse(map);
JSONObject obj = new JSONObject();
obj.put("code", '0');
obj.put("msg", "成功");
obj.put("data", json);
System.out.println("保持原始順序");
System.out.println(obj.toString());
}
輸出結果:
保持原始順序
{"msg":"成功","code":"0","data":{"3":"ccccc","1":"aaaaa","2":"bbbbb","4":"ddddd"}}
㈢ java中將map轉成json時,如何將map中的整型數字在轉成json後,變成字元串,而不是整型。
好像沒有什麼特別的辦法,可能是我才疏學淺,
我知道的兩種方式:
map是鍵值對存在,那麼類型都是固定的,我們可以再申請個map<String ,String>遍歷替換原來的map再轉換成json字元串
字元串替換,用正則添加雙引號:
publicvoidtestJson(){
Map<String,Integer>map=newHashMap<String,Integer>();
map.put("aaa",111);
Stringjson=JSON.toJSONString(map);
Stringjson1=json.replaceAll(":",":"");
json1=json1.replaceAll("}",""}");
System.out.println(json);
System.out.println(json1);
}
㈣ java中json對象是如何創建或者轉換出來的
JSONObject在JAVA中其實就相當於Map, 可以通過key取到值;
而JAVA對象,一般是JAVA中的model或者domain 模型對象, 這種對象代表的是一個業務的模型,是有明確的意義的, 包括裡面的屬性類型都是明確定義;
轉換成對象之後,操作其中的值就可以用getter,setter方法明確指定,
一般其他人使用的時候也能知道裡面有什麼,而如果只有一個JSONObject, 使用的時候除了先在控制台輸入裡面的內容是不知道裡面有什麼的,
並不適合在JAVA方法中的數據傳遞使用
㈤ java 怎麼把對象集合轉換成json
有兩種情況:第一使用外部工具包jackson-mapper-asl.Jar包,這里有一個方法
writeValueAsString(list<map<String,Objcet>>);屬於這包中的ObjectMapper類直接把list對象轉換成字元串(json格式就是一個字元串,大家都知道的),然後在jsp端都不需要解析了直接就能接受到信息。
第二種:下載谷歌的GSON包裡面就有很多方法用來把list編程json在jsp端用一個插件jquery的json方法就可以接收了
㈥ 如何將一個map 轉換成json數據
/**
* 返回Json字元串
*
* @param success
* 結果
* @param key
* 鍵
* @param value
* 值
* @return Json字元串
*/
public static String toJson(boolean success, String key, String value) {
Map<String, String> jsonMap = new HashMap<String, String>();
jsonMap.put(key, value);
return toJson(success, jsonMap);
}
/**
* 返回Json字元串
*
* @param success
* 返回結果
* @param jsonMap
* 需要返回的數據集
* @return Json字元串
*/
public static String toJson(boolean success, Map<String, String> jsonMap) {
StringBuffer buffer = new StringBuffer();
if (success) {
buffer.append("{success:true");
} else {
buffer.append("{success:false");
}
if (jsonMap.size() > 0) {
buffer.append(",");
for (String key : jsonMap.keySet()) {
if (!key.equals("class"))
buffer.append(key + " : '" + jsonMap.get(key) + "',");
}
// 去掉最後一個','
buffer.deleteCharAt(buffer.length() - 1);
}
buffer.append("}");
return buffer.toString();
}
㈦ 如何把map轉成json
把map轉成json的步驟:
1、需要一些jar包:json-lib-2.4-jdk15.jar、ezmorph-1.0.6.jar、commons-logging.jar、commons-lang.jar、commons-collections.jar、commons-beanutils.jar。
2、把Map轉換成json, 要使用jsonObject對象:
Map<String, Object> map = new HashMap<String, Object>();
map.put("userId", 1001);
map.put("userName", "張三");
map.put("userSex", "男");
JSONObject jsonObject = JSONObject.fromObject(map);
System.out.println(jsonObject);
㈧ 如何將java中的map轉換成jsonobject
hashmap是以鍵值對(key-value)的格式保存對象的容器, 數組是按順序一個一個保存對象的容器 你把hashmap轉換成數組是想把key轉成數組呢還是把value轉成數組呢或者key和value組合成的對象轉換成數組呢.我把key和value的分別寫出來,組合對象的同理...
㈨ 如何構建json串,並將map轉為jsonObject對象的三種方式(scala)
眾所周知,kafka中存儲的數據是經過BASE64加密後的jsonObject,因此從kafka中讀取的數據經過base64解碼,得到的是json串,利用JSONObect的方法可以對json串進行解析,拿到對應的數據。那麼要如何將scala對象或者java對象轉換為JsonObject對象或JSONObject對象呢?(注意:JsonObject對象和JSONObject對象不同,調用的API也不一樣)
三種轉換方式依賴的包源碼都是用JAVA編寫,所以構建Map對象時完全使用java對象,不會發生錯誤。構建過程如下:
三種將java對象轉換為jsonObject對象的開源包有:
1、google提供的Genson是一個完全的Java和JSON轉換的類庫,提供了全面的數據綁定、流操作等。基於Apache 2.0協議發布。轉換結果為
JsonObject對象。
使用需要先導入Jar包:import com.google.gson.{Gson, JsonParser}
引入依賴:這里選用版本為:2.2.4,具體版本可以根據業務需求選擇。
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.2.4</version>
</dependency>
2、Fastjson 是一個 Java 庫,可以將 Java 對象轉換為 JSON 格式,當然它也可以將 JSON 字元串轉換為 Java 對象。
導入jar包:import com.alibaba.fastjson.JSON
引入依賴:
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.8</version>
</dependency>
3、net.sf.json-lib方式
導入jar包:import net.sf.json.JSONObject
引入依賴:
<dependency>
<groupId>net.sf.json-lib</groupId>
<artifactId>json-lib-ext-spring</artifactId>
<version>1.0.2</version>
</dependency>