JSON

jackson处理json对象相关小结

字号+ 作者:H5之家 来源:H5之家 2018-01-23 10:00 我要评论( )

在解析JSON方面,无疑JACKSON是做的最好的,下面从几个方面简单复习下。 1 JAVA 对象转为JSON import java.io.File; import java.io.IOException; import org.co

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

1 JAVA 对象转为JSON
  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对象
   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()方法,例子为:
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"
}
 

 

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • 这样的JSON怎么解析成二维数组并输出 JavaScript DHTML 脚本技术

    这样的JSON怎么解析成二维数组并输出 JavaScript DHTML 脚本技术

    2018-01-23 11:25

  • 使用Jquery+Ajax+Json如何实现分页显示附JAVA+JQuery实现异步分

    使用Jquery+Ajax+Json如何实现分页显示附JAVA+JQuery实现异步分

    2018-01-21 18:13

  • clarancepeng

    clarancepeng

    2018-01-21 18:07

  • 超越XML和JSON:YAML,Java开发人员的新选择[3]

    超越XML和JSON:YAML,Java开发人员的新选择[3]

    2018-01-21 17:00

网友点评