您的位置:首页 > 编程语言 > Java开发

【Java中将JSON格式的数据转换成对应的Bean、Map、List数据】

2013-08-27 14:44 1071 查看
简单说明:
  为了方便数据在客户端及服务器端的传输,有时候我们会用一些比较方便组织的数据类型,比如json、xml等传给客户端,客户端也可以win2003系统下载重新组织数据传回服务器端。JSON和XML提供了一套比较方便的数据组织形式。。并且有很多现成的类库用于解析这些数据。。

  本文是对net.sf.json使用后的总结。。目前小橙子下载官方开源的对json进行处理的项目很多,fastjson还有其它等等。。视自己处理问题的复杂程度考虑选择使用不同的依赖包。。

  如果使用maven构建项目,需要电脑系统优化对以下两个包进行依赖

  [html]

  <dependency>

  <groupId>net.sf.json-lib</groupId>

  <artifactId>json-lib</artifactId>

  <version>2.2.3</version>

  </dependency>

  <dependency>

  <groupId>xom</groupId>

  <artifactId>xom</artifactId>

  <version>1.2.5</version>

  </dependency>

  如果使用Eclipse自己构建项目,需要自己手动下载依赖包进行依赖。

  示例程序:

  1.将JSON组装的实体数据类型转换为Java中对应的简单Bean对象(只包含简单的数据类型)

  [java]

  /**

  * 将json格式封装的简单实体类型数据转换成简单类型的javabean

  * @return

  */

  private static Object JSON2SimpleBean() {

  String jsonStr = "{\"age\":23,\"id\":123,\"name\":\"tt_2009\"," +

  "\"province\":\"上海\",\"sex\":\"男\"}";

  JSONObject jsonBean = JSONObject.fromObject(jsonStr);

  return JSONObject.toBean(jsonBean, SimpleUser.class);

  }

  以上代码是将Json数据串转换成java中自定义的对应的简单bean。SimpleUser看最后代码附录。

  2.将JSON组装的复杂数据转换成复杂的java数据实体(对象中包含其它复杂对象,如收货地址用List存储)

  [java]

  /**

  * 将json格式封装的复杂实体数据转换成复杂类型的javabean

  * @return

  */

  private static Object JSON2ComplexBean() {

  String jsonStr = "{\"address\":[\"北京\",\"上海\",\"广州\"]," +

  "\"age\":23,\"id\":123,\"name\":\"tt_2009\",\"province\":\"上海\",\"sex\":\"男\"}";

  JSONObject jsonBean = JSONObject.fromObject(jsonStr);

  return JSONObject.toBean(jsonBean, ComplexUser.class);

  }

  以上代码将json组装的数据串转换成java中自定义的复杂数据实体。ComplexUser看最后附录代码。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐