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. pureftp 服务

    没啥图,不喜勿喷---_-   ftp(file transfer protocol)--文件传输协议 (a)官网:www.pureftpd.org (b)原理 让用户连接上一个远程计算机(运行FTP ...

  2. 数据库SQL语句优化小结

    网上查找的总结: 1.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如: select id from t where num is null ...

  3. js实例--飞机大战

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"/> <title> ...

  4. 85. Maximal Rectangle

    85. Maximal Rectangle Given a 2D binary matrix filled with 0's and 1's, find the largest rectangle c ...

  5. Mac OS X系统安装盘制作

    本文来记录一下制作苹果系统安装盘的步骤: 1. 准备一个空白的U盘或移动硬盘和去App Store下载好最新版本的系统,现在最新的是:macOS Sierra,下载后会默认打开安装进程,退出不管即可, ...

  6. c# 使用泛型类型作为参数

    泛型作为一种经常使用的类型,有时需要在方法之间传递,不了解的话可能会束手无策. 比如我定义一个方法 processList  需要把List<T>  作为参数传入,这时可以这样写 publ ...

  7. python 新手遇到的问题

    作为新手,我把之前遇到的问题贴出来 错误提示1: TypeError: unbound method a() must be called with A instance as first argum ...

  8. C 标准库系列之ctype.h

    ctype.h 主要提供了一些函数用以测试字符或字符处理的功能函数:包括字符判断检测.字符转换: 目前ASCII字符可分为以下一些类型,如:大写.小写.字母.数字.十六进制.空白字符.可打印字符.控制 ...

  9. Duilib源码分析(四)绘制管理器—CPaintManagerUI—(前期准备二)

    接下来,我们继续分析UIlib.h文件中余下的文件,当然部分文件可能顺序错开分析,这样便于从简单到复杂的整个过程的里面,而避免一开始就出现各种不理解的地方. 1. UIManager.h:UI管理器, ...

  10. Datazen介绍

    Datazen是移动端全平台的图表解决方案,基于HTML5的应用,实现了全平台的整合.此篇主要对其功能进行大体介绍. 这个平台最近刚被微软收购,相信微软看重的是其HTML5在全移动端平台的实现.Dat ...