json-lib基础

一、json-lib所需的jar包:

  json-lib.jar,commons-beanutils.jar,commons-collections.jar,commons-lang.jar,commons-logging.jar,ezmorph-1.0.6.jar(可直接在网上搜索下载)。

二、使用:

  1、json字符串  <------>  json

     String jsonStr="{\"name\" : \"peter\",\"age\" : 25,\"address\" : \"广州\",\"weight\" : \"55.5\",\"handsome\" : true}";     //String------>json
        JSONObject jsonObject=JSONObject.fromObject(jsonStr);     //json------>String     String jsonString=jsonObject.toString();

  2、java实体类  <------>  json

public class User {
    private String name;
    private int age;
    private String address;
    private double weight;
    private boolean handsome;
    //省略构造和get/set方法
}
  User user=new User("peter", 20, "广州", 55.5, true);  //java实体类------>json
    JSONObject jsonObject=JSONObject.fromObject(user);

    
    //{"weight":55.5,"address":"广州","name":"peter","age":20,"handsome":true}
    System.out.println(jsonObject);

  

  3、List  <------>  json

        List<String> list=new ArrayList<String>();
        list.add("QQQQQQ");
        list.add("WWWWWW");
        list.add("EEEEEE");
        list.add("RRRRRR");
        //List------>json
        JSONArray jsonArray=JSONArray.fromObject(list);
        //json------>List
        List<String> list3=(List)JSONArray.toCollection(jsonArray);

  4、Map  <------>  json

     Map<String, String> map=new HashMap<String, String>();
        map.put("name", "peter");
        map.put("sex", "Man");
        map.put("age", "20");

        //Map------json
        JSONObject jsonMap=JSONObject.fromObject(map);
        //json------>Map
        Map<String, String> mapJson=(Map)JSONObject.toBean(jsonMap, Map.class);

  5、Set  <------>  json

     Set<String> set=new HashSet<String>();
        set.add("QQQQQQ");
        set.add("wwwwww");
        set.add("eeeeee");
        //Set------>json
        JSONArray array=JSONArray.fromObject(set);

        //json------>Set
        Set<String> set1=new HashSet<String>();
        for (Object object : array) {
            set1.add(object.toString());
        }

        //报错:java.lang.ClassCastException
        Set<String> setJson=(Set<String>)JSONArray.toCollection(array,Set.class);

        //直接转List
        List<String> list=(List)JSONArray.toCollection(array);

  

时间: 2024-10-10 02:02:13

json-lib基础的相关文章

Json数组基础知识

1.对象是一个无序的"'名称/值'对"集合. (1)一个对象以"{"(左括号)开始,"}"(右括号)结束. (2)每个"名称"后跟一个":"(冒号): (3)"'名称/值' 对"之间使用","(逗号)分隔.(如图所示,图中表示数据的方式是类似非确定性自动机的形式,没学过编译原理的人,可能理解起来困难点,实际上也是正则表达式的形式.下同) 例子:表示人的一个对象: 1

json数据基础讲解

JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.JSON采用完全独立于语言的文本格式,这些特性使JSON成为理想的数据交换语言.易于人阅读和编写,同时也易于机器解析和生成. 基础结构 JSON建构于两种结构: 1. "名称/值"对的集合(A collection of name/value pairs).不同的语言中,它被理解为对象(object),记录(record),结构(struct),字典(dictionary),哈希表(hash

JSON相关基础知识

JSON的定义: 一种轻量级的数据交换格式,具有良好的可读和便于快速编写的特性.业内主流技术为其提供了完整的解决方案(有点类似于正则表达式 ,获得了当今大部分语言的支持),从而可以在不同平台间进行数据交换.JSON采用兼容性很高的文本格式,同时也具备类似于C语言体系的行为. JSON Vs XML: 1.JSON和XML的数据可读性基本相同 2.JSON和XML同样拥有丰富的解析手段 3.JSON相对于XML来讲,数据的体积小 4.JSON与JavaScript的交互更加方便 5.JSON对数据

JSON lib 里JsonConfig详解

一,setCycleDetectionStrategy 防止自包含 /** * 这里测试如果含有自包含的时候需要CycleDetectionStrategy */ public static void testCycleObject() { CycleObject object = new CycleObject(); object.setMemberId("yajuntest"); object.setSex("male"); JsonConfig jsonCon

IOS SWIFT 网络请求JSON解析 基础一

前言:移动互联网时代,网络通信已经是手机端必不可少的功能.应用中也必不可少地使用了网络通信,增强客户端与服务器交互.使用NSURLConnection实现HTTP的通信.NSURLConnection 提供了异步请求和同步请求两种通信方式.同步请求数据会造成主线程阻塞,通常在请求大数据或网络不通畅时不建议使用. 不管同步请求还是异步请求,建立通信的步骤是一样的: 1 创建NSURL 2 创建NSURLRequest 3 创建NSURLConnection 当NSURLConnection 创建成

json lib 2.4及其依赖包下载

下载文件地址:https://files.cnblogs.com/files/xiandedanteng/json-lib-2.4%26dependencies_jars.rar 它包括 commons-beanutils-1.9.3.jar commons-collections-3.2.jar commons-lang-2.3.jar commons-logging-1.2.jar ezmorph-1.0.6.jar json-lib-2.4-jdk15.jar 这些库可以满足转化Java对

spingmvc 返回json数据日期格式化方法

第一种: json 用的是这个依赖 <!-- JSON lib 开发包 以及它的依赖包 --> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <version>2.6.0</version> </dependency> 在springmvc返回j

项目目录札记【附:config.json】

config.json:基础配置文件 /* 该文件用于生产环境,不要轻易修改该文件,请修改development.json,修改相应的端口或配置*/ { /* begin 添加特殊的配置到里面,比如mongo*/ // "mongoConfig": { // "host": "mongoDb", // "database": "xxx" // }, /* end */ "restify"

还在用Json完成Ajax,改用Beetl吧(上)

浏览器通过AJAX,服务器返回json数据,无刷新的更新视图的这种模式在WEB开发中我已经用了很长时间了,记得最早是08年的时候用的,当时传递JSON数据让我眼前一亮.这种方式是只需要采用工具包将模型序列化成json格式就行,js UI库总能识别这种格式,轻易的生成新的视图片段. 然而时过境迁.这种传递AJAX JSON方式渐渐有了新的问题. JSON序列化库无法完美的序列化模型对象.序列化库总期望输入一个Object,但实际上前端有可能需要多个Object,这样,你不得不再创建一个序列化专用的

json库的编译方法和vs2010中导入第三方库的方法

一.去相应官网下载json.cpp文件 Jsoncpp下载:https://sourceforge.net/projects/jsoncpp/    版本为v0.5.0 最新版本在:https://github.com/open-source-parsers/jsoncpp 二.编译链接成库文件 1)解压下载的json包,得到jsoncpp-src-0.5.0文件,打开jsoncpp-src-0.5.0\makefiles\vs71\jsoncpp.sln 2)转换项目为vs2010格式,并将模