Java json串生成及转bean
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("---------------------------"); } }
Java json串生成及转bean的更多相关文章
- Java中将JSON格式的数据转换成对应的Bean、Map、List数据
简单说明: 为了方便数据在客户端及服务器端的传输,有时候我们会用一些比较方便组织的数据类型,比如json.xml等传给客户端,客户端也可以重新组织数据传回服务器端.JSON和XML提供了一套比较方便的 ...
- 利用JAVA反射机制将JSON数据转换成JAVA对象
net.sf.json.JSONObject为我们提供了toBean方法用来转换为JAVA对象, 功能更为强大, 这里借鉴采用JDK的反射机制, 作为简单的辅助工具使用, 有些数据类型需要进行转 ...
- Java对象转换成xml对象和Java对象转换成JSON对象
1.把Java对象转换成JSON对象 apache提供的json-lib小工具,它可以方便的使用Java语言来创建JSON字符串.也可以把JavaBean转换成JSON字符串. json-lib的核心 ...
- 将JSON数据转换成JAVA的实体类
思路:首先将JSON格式的数据转换成JSONObject,然后将JSONObject转换成Java的实体类(其中类属性包括List等类型) Java实体类: SearchFilter 类 1 publ ...
- 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方法时,如果它的属性里面包含 ...
- Java JSON、XML文件/字符串与Bean对象互转解析
前言 在做web或者其他项目中,JSON与XML格式的数据是大家经常会碰见的2种.在与各种平台做数据对接的时候,JSON与XML格式也是基本的数据传递格式,本文主要简单的介绍JSON/XML ...
- java中String转换成json,json转换成String
前置添加pom <!-- 配置gson --> <dependency> <groupId>com.google.code.gson</groupId> ...
- java -json()
json-lib和org.json的使用几乎是相同的,我总结出的区别有两点: 两种包 1. List集合转换成json方法 List list = new ArrayList(); list.add( ...
- json转换成对象
在json转换成对象时,json的key会与java 类的字段一一对应.如果没有映射上的java字段会在该数据类型上填充默认值,如int 0,String null 等. 没有映射的json key在 ...
随机推荐
- ASP.NET SignalR入门
前言 之前在培训ASP.NET WebAPI的时候有提过SignalR这个技术,但当时只是讲了是用来做什么的,并没有多说.因为自己也是画图找资料的时候见到的.后来当一直关注的前端大神贤心发布LayIM ...
- 【翻译】首个基于NHibernate的应用程序
首个基于NHibernate的应用程序 Your first NHibernate based application 英文原文地址:http://www.nhforge.org/wikis/how ...
- GroupJoin和Join的声明及调用
public static IEnumerable<TResult> Join<TOuter, TInner, TKey, TResult>(this IEnumerable& ...
- hdu 1241 Oil Deposits
#include<cstdio> #include<iostream> #include<algorithm> #include<math.h> #in ...
- linux学习日记之老男孩
2016年10月5日企业面试题:cp 命令复制文件是如果有覆盖可能的话如何去除确认步骤,如:将/mnt/text.txt 复制 到/temp/text.txt,去除覆盖确认命令.方法:1.加全路径的c ...
- ASN.1 key structures in DER and PEM
转自:https://tls.mbed.org/kb/cryptography/asn1-key-structures-in-der-and-pem Introduction Everybody lo ...
- Pyqt 基础功能
总结Pyqt的基础知识 1. Pyqt 设置禁止最大化及禁止拖拽窗口大小 # PyQT禁止窗口最大化按钮: self.setWindowFlags(QtCore.Qt.WindowMinimizeB ...
- Duilib源码分析(一)整体框架
Duilib界面库是一款由杭州月牙儿网络技术有限公司开发的界面开源库,以viksoe项目下的UiLib库的基础上开发(此后也将对UiLib库进行源码分析):通过XML布局界面,将用户界面和处理逻辑彻底 ...
- 【Java并发系列02】Object的wait()、notify()、notifyAll()方法使用
一.前言 对于并发编程而言,除了Thread以外,对Object对象的wati和notify对象也应该深入了解其用法,虽然知识点不多. 二.线程安全基本知识 首先应该记住以下基本点,先背下来也无妨: ...
- 《Python操作SQLite3数据库》快速上手教程
为什么使用SQLite数据库? 对于非常简单的应用而言,使用文件作为持久化存储通常就足够了,但是大多数复杂的数据驱动的应用需要全功能的关系型数据库.SQLite的目标则是介于两者之间的中小系统.它有以 ...