今天练习,放这里,以后再补充

这里使用的jar包是 net.sf.json.JSONObject

package yh.test.t1118;

import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
import yh.com.entity.User; import java.util.HashMap;
import java.util.List;
import java.util.Map; /**
* Created by Administrator on 2015/11/18.
*/
public class Test { public static void main(String[] args) { // javaToJson();
// JsonToJava();
test1();
} /**
* java to json
*/
public static void javaToJson(){
String json = "{\"Json\":\"json\"}";
JSONObject jsonObj = JSONObject.fromObject(json);
Map<String, String> user = new HashMap<String, String>();
user.put("name", "jack");
user.put("age", "");
user.put("sex", "male");
user.put("job", "students");
jsonObj.put("users",user);
System.out.println("------开始输出json------");
System.out.println(jsonObj);
} /**
* json to java
*/
public static void JsonToJava(){
String json = "{x:'1',y:'2',userId:'112',element:[{id:'123',name:'haha'},{id:'456',name:'hehe'}]}"; // JSONObject jsonObject = new JSONObject();
JSONObject jsonObject = JSONObject.fromObject(json); jsonObject.element("name","limei");
jsonObject.element("sex","female");
jsonObject.accumulate("jj", "ss"); Map<String,String> map = new HashMap<String, String>();
map.put("a","A");
map.put("b","B");
map.put("c","C");
jsonObject.element("user",map );
// System.out.println(jsonObject.toString()); Object o = jsonObject.get("user"); // System.out.println("==================>"+o);
// System.out.println("name:"+jsonObject.get("name"));
JSONArray jsonArray = jsonObject.getJSONArray("element");
for(int i = ;i<jsonArray.size();i++){
System.out.println(jsonArray.get(i));
} // Object object = JSONObject.toBean(jsonObject);
// System.out.println(object.toString());
} /*******************将json反序列化为javabean*****************/
public static void test1(){ String jsonStr = "{x:1,\"userId\":\"112\",element:[{id:'123',name:'haha'},{id:'456',name:'hehe'}]}";
Map<String,Class<?>> m = new HashMap<String,Class<?>>();
m.put("x", Integer.class);
m.put("userId", String.class);
m.put("element",Element.class); Jsontobean myBean = (Jsontobean)JSONObject.toBean( JSONObject.fromObject(jsonStr), Jsontobean.class, m);
System.out.println("x: " + myBean.getX());
System.out.println("userId: " + myBean.getUserId()); for(Element e : myBean.getElement()){
System.out.println(e.getId() +"," + e.getName());
}
} }

java to Json or Json to JavaBean的更多相关文章

  1. JAVA利用反射映射JSON对象为JavaBean

    关于将JSONObject转换为JavaBean,其实在JSONObject中有对于的toBean()方法来处理,还可以根据给定的JsonConfig来处理一些相应的要求,比如过滤指定的属性 //返回 ...

  2. Java构造和解析Json数据的两种方法详解二

    在www.json.org上公布了很多JAVA下的json构造和解析工具,其中org.json和json-lib比较简单,两者使用上差不多但还是有些区别.下面接着介绍用org.json构造和解析Jso ...

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

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

  4. gson和fastjson将json对象转换成javaBean 简单对照

    今天在网上看代码时,发现项目使用了Gson,用于将json字符串转换成javaBean. 以前没使用过Gson,随即,简单入了个们, 想起fastjson也有将json字符串转换成javaBean的A ...

  5. Java构造和解析Json数据的两种方法详解二——org.json

    转自:http://www.cnblogs.com/lanxuezaipiao/archive/2013/05/24/3096437.html 在www.json.org上公布了很多JAVA下的jso ...

  6. Java中使用org.json和json-lib解析JSON

    文章目录  [隐藏] 一.JavaProject中org.json解析JSON 1.JSON的org.son-api下载 1)JSON网址 2)JSON的java解析org.json-api网址 3) ...

  7. java中对象转json,json转list,json转map

    在IDEA中的springboot项目里写的一个测试例子,新建User类,四个字段,Long id , String password,String userName,int age; 以及带参构造, ...

  8. (转)json格式转换成javaBean对象的方法

    把json格式转换成javaBean才可以.于是查了一下资料,网上最多的资料就是下面的这种方式: Java code? 1 2 3 4 5 6 7 8 9 String str = "[{\ ...

  9. java中常见的json解析方法、库以及性能对比

    常见的json解析有原生的JSONObject和JSONArray方法,谷歌的GSON库,阿里的fastjson,还有jackson,json-lib. Gson(项目地址:https://githu ...

  10. fastjson: json对象,json对象数组,javabean对象,json字符串之间的相互转化

    fastjson: json对象,json对象数组,javabean对象,json字符串之间的相互转化 在开发过程中,经常需要和前端交互数据,数据交互的格式都是JSON,在此过程中免不了json字符串 ...

随机推荐

  1. (1)sqlite基础

    一.安装sqlite 下载页面:http://www.sqlite.org/download.html 1.下载 sqlite-tools-win32-*.zip 和 sqlite-dll-win32 ...

  2. java并发之hashmap源码

    在上篇博客中分析了hashmap的用法,详情查看java并发之hashmap 本篇博客重点分析下hashmap的源码(基于JDK1.8) 一.成员变量 HashMap有以下主要的成员变量 /** * ...

  3. [开源] FreeSql.Tools Razor 生成器

    FreeSql 经过半年的开发和坚持维护,在 0.6.x 版本中完成了几大重要事件: 1.按小包拆分,每个数据库实现为单独 dll: 2.实现 .net framework 4.5 支持: 3.同时支 ...

  4. 支持C++11标准

    设置CB下的GCC. Settings->Compiler->Compiler Settings勾选Have g++ follow the C++11 ISO C++ language s ...

  5. PyTorch学习笔记之计算图

    1. **args, **kwargs的区别 def build_vocab(self, *args, **kwargs): counter = Counter() sources = [] for ...

  6. pt-pmp :pt toolkit

    http://www.cnblogs.com/ivictor/p/6012183.html

  7. 【grpc】spring boot+grpc的使用

    spring boot+grpc的使用 参考:https://baijiahao.baidu.com/s?id=1573961922096412&wfr=spider&for=pc

  8. scp 时出现permission denied

    如果scp到 /usr/local/目录下,则无权限,可更改到用户目录下

  9. 怎么在SQL查询的结果里加行号?

    怎么在SQL查询的结果里加行号? 学习了:https://zhidao.baidu.com/question/91188037.html mysql : ) as rowNo From a, () ) ...

  10. AngularJS的控制器示例

    代码下载:https://files.cnblogs.com/files/xiandedanteng/angularjsCtrl.rar 代码: <!DOCTYPE HTML PUBLIC &q ...