首页IT科技jackson将json转成list(jackson处理json对象相关小结)

jackson将json转成list(jackson处理json对象相关小结)

时间2025-05-05 11:31:09分类IT科技浏览3056
导读:在解析JSON方面,无疑JACKSON是做的最好的,下面从几个方面简单复习下。...

在解析JSON方面            ,无疑JACKSON是做的最好的                 ,下面从几个方面简单复习下            。

1 JAVA 对象转为JSON

Java代码
importjava.io.File; importjava.io.IOException; importorg.codehaus.jackson.JsonGenerationException; importorg.codehaus.jackson.map.JsonMappingException; importorg.codehaus.jackson.map.ObjectMapper; publicclassJacksonExample{ publicstaticvoidmain(String[]args){ Useruser=newUser(); ObjectMappermapper=newObjectMapper(); try{ //convertuserobjecttojsonstring,andsavetoafile mapper.writeValue(newFile("c:\\user.json"),user); //displaytoconsole System.out.println(mapper.writeValueAsString(user)); }catch(JsonGenerationExceptione){ e.printStackTrace(); }catch(JsonMappingExceptione){ e.printStackTrace(); }catch(IOExceptione){ e.printStackTrace(); } }
import java.io.File; import java.io.IOException; import org.codehaus.jackson.JsonGenerationException; import org.codehaus.jackson.map.JsonMappingException; import org.codehaus.jackson.map.ObjectMapper; public class JacksonExample { public static void main(String[] args) { User user = new User(); ObjectMapper mapper = new ObjectMapper(); try { // convert user object to json string, and save to a file mapper.writeValue(new File("c:\\user.json"), user); // display to console System.out.println(mapper.writeValueAsString(user)); } catch (JsonGenerationException e) { e.printStackTrace(); } catch (JsonMappingException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } }

输出为:

{"age":29,"messages":["msg 1","msg 2","msg 3"],"name":"mkyong"}

2 JSON反序列化为JAVA对象

Java代码
importjava.io.File; importjava.io.IOException; importorg.codehaus.jackson.JsonGenerationException; importorg.codehaus.jackson.map.JsonMappingException; importorg.codehaus.jackson.map.ObjectMapper; publicclassJacksonExample{ publicstaticvoidmain(String[]args){ ObjectMappermapper=newObjectMapper(); try{ //readfromfile,convertittouserclass Useruser=mapper.readValue(newFile("c:\\user.json"),User.class); //displaytoconsole System.out.println(user); }catch(JsonGenerationExceptione){ e.printStackTrace(); }catch(JsonMappingExceptione){ e.printStackTrace(); }catch(IOExceptione){ e.printStackTrace(); } }
import java.io.File; import java.io.IOException; import org.codehaus.jackson.JsonGenerationException; import org.codehaus.jackson.map.JsonMappingException; import org.codehaus.jackson.map.ObjectMapper; public class JacksonExample { public static void main(String[] args) { ObjectMapper mapper = new ObjectMapper(); try { // read from file, convert it to user class User user = mapper.readValue(new File("c:\\user.json"), User.class); // display to console System.out.println(user); } catch (JsonGenerationException e) { e.printStackTrace(); } catch (JsonMappingException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } }

输出:User [age=29, name=mkyong, messages=[msg 1, msg 2, msg 3]]

3 在上面的例子中      ,如果要输出的JSON好看点         ,还是有办法的                 ,就是使用

defaultPrettyPrintingWriter()方法        ,例子为:

Java代码
Useruser=newUser(); ObjectMappermapper=newObjectMapper(); System.out.println(mapper.defaultPrettyPrintingWriter().writeValueAsString(user));
User user = new User(); ObjectMapper mapper = new ObjectMapper(); System.out.println(mapper.defaultPrettyPrintingWriter().writeValueAsString(user));

则输出整齐:

{

"age" : 29,

"messages" : [ "msg 1", "msg 2", "msg 3" ],

"name" : "mkyong"

}

声明:本站所有文章      ,如无特殊说明或标注                  ,均为本站原创发布                 。任何个人或组织           ,在未征得本站同意时   ,禁止复制           、盗用                  、采集      、发布本站内容到任何网站        、书籍等各类媒体平台      。如若本站内容侵犯了原著者的合法权益                  ,可联系我们进行处理         。

创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!

展开全文READ MORE
xp系统出错(为什么在XP/WIN7系统总是提示提交错误报告?) 搞软件开发的人叫啥来着(过年回家,你是否也努力的给别人解释软件开发是干啥滴?)