當(dāng)前位置:
首頁 >
前端技术
> javascript
>内容正文
javascript
利用FastJSON 把list和map转换成Json
生活随笔
收集整理的這篇文章主要介紹了
利用FastJSON 把list和map转换成Json
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
JSON 是個好東西,就是第三方的庫太多了有木有。今天在把List轉(zhuǎn)化成JSON的時候,在網(wǎng)上找到的方法,就用了各種第三方的庫,把自己搞暈了,其實(shí)是很簡單。所以做事情的時候一定要思路清晰,導(dǎo)入的包也是很重要的,別上來就看代碼,把自己整蒙圈了。。。 之前有用過Jackson、谷歌的Gson ,這次用的是阿里的FastJSON,號稱是最快的JSON轉(zhuǎn)換。
項(xiàng)目用的是servlet
//確保JSP和servlet的編碼方式一致 resp.setContentType("text/html;charset=GBK"); List<String> jymdList = new ArrayList<String>(); PrintWriter out = null;try {//從數(shù)據(jù)庫中取得ListjymdList = efileViewUiService.getLymd();//簡單粗暴,對于Map這句也適用String json = JSON.toJSONString(jymdList);//取得流向JSP傳遞數(shù)據(jù) PrintWriter out = resp.getWriter();out.print(json);} catch (BaseException e) {e.printStackTrace();} finally{out.close(); }之后是JSP,用的jQuery
$(function() {$.ajax({url : "<%=basePath %>/Servlet?cmd=getJYMD&random="+Math.random(),type:"post",dataType : "json",success : function(data) {$.each(data,function(name, value) {$("#remark").append("<option value="+value+">" +value+ "</option>");});}});});url 問號后面的cmd 在servlet中?req.getParameter("cmd") 然后做判斷,在確定調(diào)用哪個方法。
之后就是 jQuery的each 相當(dāng)于 for循環(huán) , 拼接出一個select 把value 放入 option中。
?
fastjson入口類是com.alibaba.fastjson.JSON,主要的API是JSON.toJSONString,和parseObject。
package com.alibaba.fastjson;public abstract class JSON {public static final String toJSONString(Object object);public static final <T> T parseObject(String text, Class<T> clazz, Feature... features);}序列化:
String jsonString = JSON.toJSONString(obj);反序列化:
VO vo = JSON.parseObject("...", VO.class);泛型反序列化:
import com.alibaba.fastjson.TypeReference;List<VO> list = JSON.parseObject("...", new TypeReference<List<VO>>() {});?
Jackson轉(zhuǎn)換Map:
StringWriter sw = new StringWriter(); Map<String, String> map = new HashMap<String, String>(); ObjectMapper mapper = new ObjectMapper(); mapper.writeValue(sw, map); sw.close();Gson直接轉(zhuǎn)換對象:
Gson gson = new Gson(); response.getWriter().write(gson.toJson(obj));response.getWriter().close();
?
轉(zhuǎn)載于:https://www.cnblogs.com/chaoslane/p/4907238.html
總結(jié)
以上是生活随笔為你收集整理的利用FastJSON 把list和map转换成Json的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: XML 解析错误:XML 或文本声明不在
- 下一篇: Keepalived+HAProxy基于