package com;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map; import net.sf.ezmorph.bean.MorphDynaBean;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
import net.sf.json.JSONSerializer;
public class Fetion { public static void main(String[] ss) {
test2();
} public static void test(){ //构建json串
Map<String,Object> map3 = new HashMap<String,Object>();
map3.put("id",1234);map3.put("name","zhange");map3.put("age", 43); List<Object> ls = new ArrayList<Object>();
ls.add(map3); Map<String,Object> map2 = new HashMap<String,Object>();
map2.put( "count" , "1" );
map2.put( "router" , ls); Map<String,Object> map = new HashMap<String,Object>();
map.put( "listroutersresponse" , map2); JSONObject jsonObject2 = JSONObject.fromObject(map);
String response = jsonObject2.toString();
System.out.println("json串值:"+response); //解析json串
JSONObject jsonObject = JSONObject.fromObject(response);
JSONObject listvolumesresponse = (JSONObject) jsonObject.get("listroutersresponse");
if (listvolumesresponse != null && listvolumesresponse.has("router")) {
JSONArray router = (JSONArray) listvolumesresponse.getJSONArray("router");
List<MorphDynaBean> list = (List<MorphDynaBean>) JSONSerializer.toJava(router);
System.out.println("获取id值:"+list.get(0).get("id").toString());
}
System.out.println("---------------------------");
//构建MorphDynaBean
MorphDynaBean mdb;
JSONObject js = new JSONObject();
js.accumulate("areaid", 421);
js.accumulate("areaname", "福建");
mdb = (MorphDynaBean) JSONSerializer.toJava(js);
System.out.println("构建MorphDynaBean:" + mdb);
try {
System.out.println("获取地市名:" + mdb.get("areaname")); } catch (Exception e) {
e.printStackTrace();
}
System.out.println("---------------------------"); } public static void test2(){
//构建json串
Map<String,Object> map3 = new HashMap<String,Object>();
map3.put("id",1234);map3.put("name","zhange");map3.put("age", 43); Map<String,Object> map2 = new HashMap<String,Object>();
map2.put( "count" , "1" );
map2.put( "router" , map3); Map<String,Object> map = new HashMap<String,Object>();
map.put( "listroutersresponse" , map2); JSONObject jsonObject2 = JSONObject.fromObject(map);
String response = jsonObject2.toString();
System.out.println("json串值:"+response); //解析json串
JSONObject jsonObject = JSONObject.fromObject(response);
JSONObject listvolumesresponse = (JSONObject) jsonObject.get("listroutersresponse");
if (listvolumesresponse != null && listvolumesresponse.has("router")) {
JSONObject router = listvolumesresponse.getJSONObject("router");
System.out.println("获取id值:"+router.get("id").toString());
}
System.out.println("---------------------------");
//构建MorphDynaBean
MorphDynaBean mdb;
JSONObject js = new JSONObject();
js.accumulate("areaid", 421);
js.accumulate("areaname", "福建");
mdb = (MorphDynaBean) JSONSerializer.toJava(js);
System.out.println("构建MorphDynaBean:" + mdb);
try {
System.out.println("获取地市名:" + mdb.get("areaname")); } catch (Exception e) {
e.printStackTrace();
}
System.out.println("---------------------------"); } }

相关jar包下载

Java json串生成及转bean的更多相关文章

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

    简单说明: 为了方便数据在客户端及服务器端的传输,有时候我们会用一些比较方便组织的数据类型,比如json.xml等传给客户端,客户端也可以重新组织数据传回服务器端.JSON和XML提供了一套比较方便的 ...

  2. 利用JAVA反射机制将JSON数据转换成JAVA对象

    net.sf.json.JSONObject为我们提供了toBean方法用来转换为JAVA对象, 功能更为强大,  这里借鉴采用JDK的反射机制, 作为简单的辅助工具使用,   有些数据类型需要进行转 ...

  3. Java对象转换成xml对象和Java对象转换成JSON对象

    1.把Java对象转换成JSON对象 apache提供的json-lib小工具,它可以方便的使用Java语言来创建JSON字符串.也可以把JavaBean转换成JSON字符串. json-lib的核心 ...

  4. 将JSON数据转换成JAVA的实体类

    思路:首先将JSON格式的数据转换成JSONObject,然后将JSONObject转换成Java的实体类(其中类属性包括List等类型) Java实体类: SearchFilter 类 1 publ ...

  5. json解析出现:java.lang.ClassCastException: net.sf.ezmorph.bean.MorphDynaBean cannot be cast to XXX

    感谢大佬:https://blog.csdn.net/one_ink/article/details/99817676 一.出错原因 当我们利用json解析中的toBean方法时,如果它的属性里面包含 ...

  6. Java JSON、XML文件/字符串与Bean对象互转解析

    前言      在做web或者其他项目中,JSON与XML格式的数据是大家经常会碰见的2种.在与各种平台做数据对接的时候,JSON与XML格式也是基本的数据传递格式,本文主要简单的介绍JSON/XML ...

  7. java中String转换成json,json转换成String

    前置添加pom <!-- 配置gson --> <dependency> <groupId>com.google.code.gson</groupId> ...

  8. java -json()

    json-lib和org.json的使用几乎是相同的,我总结出的区别有两点: 两种包 1. List集合转换成json方法 List list = new ArrayList(); list.add( ...

  9. json转换成对象

    在json转换成对象时,json的key会与java 类的字段一一对应.如果没有映射上的java字段会在该数据类型上填充默认值,如int 0,String null 等. 没有映射的json key在 ...

随机推荐

  1. 游戏的套路你知道吗? H5 Canvas刮刮乐

    玩游戏的人 很多时候都会遇到翻牌子  开宝箱. 总有人傻傻的在哪里还纠结很久到底点哪一个! 纠结  指不定翻哪一个会多一点,你明明看到那个卡片的奖项多 . 那我就告诉你好了  其实很多时候在你点开那个 ...

  2. Android-LinearLayout(线性布局)

    布局:Android为我们提供了一个View和ViewGroup子类的集合.ViewGroup类是View的子类,也被称为Layout布局,它提供了流式布局.线性布局等多种布局方式.View是绘制在屏 ...

  3. SVN本地代码未提交而被覆盖

    本地代码未提交而不小心被覆盖了,肿么办... 到回收站找到你的文件 xxx.mine,代码就可以找回来了.如果回收站没有了,那就没办法了. ---- 失而复得的感觉真好!

  4. Django-Admin后台管理

    Rhel6.5 Django1.10 Python3.5 应用环境:Python+Virtualenv(Python Virtualenv运行Django环境配置) Django-Admin后台管理 ...

  5. 各种webservice调用地址

    http://www.webxml.com.cn/zh_cn/web_services.aspx

  6. 预处理指令 #import

    vs class # import会包含这个类的所有信息,包括实体变量和方法, # @class只是告诉编译器,其后面声明的名称是类的名称,至于这些类是如何定义的,先不考虑.

  7. php定界符<<<EOF讲解(转)

    Heredoc技术.可用来输出大段的html和javascript脚本 1.PHP定界符的作用就是按照原样,包括换行格式什么的,输出在其内部的东西: 2.在PHP定界符中的任何特殊字符都不需要转义:  ...

  8. div不换行_div同行_div强制不换行

    使用Float <!--已知两个div的宽度使用[Float]使两个DIV同行!注:float使用后需要清除:所以多写一个div--> <div style="width: ...

  9. 小书翻译完成,分享啦--《用Python操作大数据[MapReduceHadoop和Spark]》

    http://files.cnblogs.com/files/aguncn/%E7%94%A8Python%E6%93%8D%E4%BD%9C%E5%A4%A7%E6%95%B0%E6%8D%AE%5 ...

  10. java中的throw与throws的区别

    什么时运行时异常?什么是非运行时异常? 通俗的讲: 运行时异常:就是编译通过,运行时就崩了,比如数组越界. 非运行时异常:就是编译不通过,这时就得必须去处理了.不然就没法运行了. 全面的讲: Thro ...