map轉換成JSON的3種方法
阿新 • • 發佈:2019-01-30
1 json-lib
<dependency>
<groupId>net.sf.json-lib</groupId>
<artifactId>json-lib</artifactId>
<version>2.4</version>
<classifier>jdk15</classifier>
</dependency>
import java.util.HashMap; import java.util.Map; import net.sf.json.JSONObject; public class aaa { public static void main(String[] args) { Map map = new HashMap(); map.put("msg", "yes");//map裡面裝有yes JSONObject jsonObject = JSONObject.fromObject(map); System.out.println("輸出的結果是:" + jsonObject); //3、將json物件轉化為json字串 String result = jsonObject.toString(); System.out.println(result); } }
json-lib是一個比較老的解決方案,近幾年都沒有升級過,它的適用環境是JDK1.5,使用JDK1.6就有可能會報錯。所以配置上加入classifier-jdk15來解決這個問題。JAR下載連結
2alibaba
JSONUtils.toJSONString(requestMap);
maven座標
<!-- https://mvnrepository.com/artifact/com.alibaba/fastjson --> <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.41</version> </dependency>
3 google
new Gson().toJson(param); com.google.gson.2.2.2.jar
maven座標
<!-- https://mvnrepository.com/artifact/com.google.code.gson/gson --> <dependency> <groupId>com.google.code.gson</groupId> <artifactId>gson</artifactId> <version>2.3.1</version> </dependency>
--------------------===-------------------------附--MAP的ASCII排序-----------------------===------------------------
StringBuilder sb = new StringBuilder();
List<String> keys = new ArrayList<String>(map.keySet());
Collections.sort(keys);//排序。
for(String k : keys){
String v = params.get(k);
if(StringUtils.isNotEmpty(v)){
sb.append(v);
}
}
//return MD5.toMD5(sb+key, "UTF-8");這個就不用看了~~~