`

json使用系列分享一

    博客分类:
  • web
阅读更多

                                                         Json使用介绍

JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。

JSON采用完全独立于语言的文本格式,此特性使JSON成为理想的数据交换语言。

 

JSON具有以下这些形式:

对象是一个无序的“‘名称/集合。一个对象以“{”(左括号)开始,“}”(右括号)结束。每个名称后跟一个“:”(冒号);“‘名称/之间使用“,”(逗号)分隔。

 

数组是值(value)的有序集合。一个数组以“[”(左中括号)开始,“]”(右中括号)结束。值之间使用“,”(逗号)分隔。

 

值(value)可以是双引号括起来的字符串(string)、数值(number)truefalse null、对象(object)或者数组(array)。这些结构可以嵌套。

 

字符串(string)是由双引号包围的任意数量Unicode字符的集合,使用反斜线转义。一个字符(character)即一个单独的字符串(character string)。

字符串(string)与C或者Java的字符串非常相似。

 

数值(number)也与C或者Java的数值非常相似。除去未曾使用的八进制与十六进制格式。除去一些编码细节。

 

今天主要分享:将java代码程序中数据转为成json格式的数据。

 

前提下载相关的jar包:

commons-lang.jar

commons-logging.jar

commons-collections-3.2.1.jar

json-lib-2.2.3-jdk13.jar

commons-httpclient-3.1.jar 【今天分享的此包为非必须jar包】

ezmorph-1.0.6.jar

commons-beanutils-1.8.0.jar

 

备注:commons-collections-3.2.1.jar

      ezmorph-1.0.6.jar

commons-beanutils-1.8.0.jar 为必须所依赖的包

 

 

 

没有引入commons-collections-3.2.1.jar

 

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/collections/map/ListOrderedMap

    at net.sf.json.JSONObject.<init>(JSONObject.java:1320)

    at net.sf.json.util.CycleDetectionStrategy.<clinit>(CycleDetectionStrategy.java:37)

    at net.sf.json.JsonConfig.<clinit>(JsonConfig.java:64)

    at net.sf.json.JSONArray.fromObject(JSONArray.java:124)

    at JsonTest.listChangeJson(JsonTest.java:49)

    at JsonTest.main(JsonTest.java:20)

 

 

没有引入ezmorph-1.0.6.jar

 

Exception in thread "main" java.lang.NoClassDefFoundError: net/sf/ezmorph/Morpher

    at net.sf.json.util.CycleDetectionStrategy.<clinit>(CycleDetectionStrategy.java:37)

    at net.sf.json.JsonConfig.<clinit>(JsonConfig.java:64)

    at net.sf.json.JSONArray.fromObject(JSONArray.java:124)

    at JsonTest.listChangeJson(JsonTest.java:49)

    at JsonTest.main(JsonTest.java:20)

 

 

 

没有引入commons-beanutils-1.8.0.jar

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/beanutils/DynaBean

    at net.sf.json.JSONArray._processValue(JSONArray.java:2356)

    at net.sf.json.JSONArray.processValue(JSONArray.java:2417)

    at net.sf.json.JSONArray.addValue(JSONArray.java:2404)

    at net.sf.json.JSONArray._fromCollection(JSONArray.java:913)

    at net.sf.json.JSONArray.fromObject(JSONArray.java:142)

    at net.sf.json.JSONArray.fromObject(JSONArray.java:124)

    at JsonTest.listChangeJson(JsonTest.java:49)

    at JsonTest.main(JsonTest.java:20)

 

 

 

 

 

JsonBean 类:

/**

 * 测试JSON的使用bean

 * @author  zhaoguoli

 * @version V1.0 2010-06-29

 */

public class JsonBean {

   

    private String name;

   

    private int age;

   

    private int sex;

   

    public JsonBean(){

       name = "5";

      

       age = 0;

      

       sex = 1;

    }

 

    public JsonBean(String name, int age, int sex) {

       super();

       this.name = name;

       this.age = age;

       this.sex = sex;

    }

 

    public String getName() {

       return name;

    }

 

    public void setName(String name) {

       this.name = name;

    }

 

    public int getAge() {

       return age;

    }

 

    public void setAge(int age) {

       this.age = age;

    }

 

    public int getSex() {

       return sex;

    }

 

    public void setSex(int sex) {

       this.sex = sex;

    }

   

   

 

}

 

JsonTest 类:

import java.util.ArrayList;

import java.util.HashMap;

import java.util.List;

import java.util.Map;

 

import net.sf.json.JSONArray;

import net.sf.json.JSONObject;

 

/**

 * 测试JSON的使用方法

 *

 * @author zhaoguoli

 * @version V1.0 2010-06-30

 */

public class JsonTest {

 

    public static void main(String[] args) {

 

       // List集合转换成json代码

       listChangeJson();

 

       // Map集合转换成json代码

       m

分享到:
评论

相关推荐

    PowerBI 主题Json文件

    在提供的压缩包中,包含了一系列预设的主题Json文件,比如Perspective.json、Slipstream.json、Apothecary.json等。每个文件代表一个独特的主题,具有不同的色彩搭配和设计风格。例如: 1. Perspective.json:可能...

    json格式数据 开发利器 小凯制作

    JSON格式的数据通常以键值对的形式存在,类似于JavaScript的对象结构,即由大括号{}包围的一系列键值对,键和值之间用冒号分隔,每个键值对之间用逗号分隔。例如: ```json { "词汇": "database", "英文翻译": ...

    actionScript 解析json开源包,比官方的好

    as3corelib是Adobe AIR项目的一部分,提供了一系列有用的类和函数,包括JSON解析。Ziggy则是一个轻量级的JSON解析器,设计为简单、快速,适合那些不希望引入大型库的项目。 标签“源码”表明我们将关注到实际的代码...

    chrome的postman、json-handle插件

    可以创建测试脚本,对API接口进行一系列的自动测试,确保接口在不同条件下的行为符合预期。同时,Postman还支持导出和导入测试集合,这使得团队间的协作变得更加便捷。 而JSON-Handle则是在日常的数据处理中发挥...

    中国省市边界经纬度地图,json格式

    这种信息通常由一系列经度和纬度坐标点组成,形成闭合的多边形,用于描绘区域的边界。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。在这个场景中,...

    json

    这篇博文可能探讨了JSON在实际开发中的应用和解析,虽然具体内容未提供,但我们可以从标签“源码”和“工具”推测,博主可能分享了关于JSON库的使用,尤其是通过源代码层面的解析和操作。其中,`json-lib-2.4-jdk15`...

    lava_lib_json_api-1.3.1.26.rar_JSON_api13_lava lib json_lava lib

    在这个案例中,"lava_lib_json_api-1.3.1.26.vip" 将提供一系列工具,帮助LabVIEW开发者更轻松地处理JSON任务。 该库可能包括以下功能: 1. **JSON解析器**:将JSON字符串转化为LabVIEW数据结构,如簇或者数组。 2...

    yinyue_yinyue.json_音乐网站源码_

    音乐网站源码是用于构建在线音乐播放平台的代码集合,它包含了一系列用于展示、播放、管理以及搜索音乐的功能模块。在"yinyue_yinyue.json_音乐网站源码"中,我们可以推断出这是一个与音乐相关的JSON文件,可能包含...

    JavaScript中json使用自己总结

    JSON数组使用方括号 `[]` 来定义,数组中可以包含一系列元素,这些元素可以是基本数据类型,也可以是复杂数据类型(如对象、数组等)。例如: ```javascript var json = [ { "name": "baidu", "href": "***" },...

    postjson压力测试.zip

    "postjson压力测试"文件很可能是包含了一系列的测试脚本、测试报告模板或者是一次完整的压力测试案例,对于学习和实践接口压力测试非常有价值。通过分析和学习这些资料,我们可以掌握如何针对POST和GET接口进行有效...

    【课件】NPM 命令使用 第三方模块和 package.json 、cnpm安装1

    通过运行`npm init`命令(或使用`npm init --yes`快速创建默认配置),你可以生成一个初始的`package.json`文件,用于记录项目的基本信息和依赖。`dependencies`和`devDependencies`字段分别用来管理生产环境和开发...

    chrome插件Advanced-REST-client及配置文件definitions.json

    6. **测试套件**:用户可以创建测试套件,包含一系列请求,进行自动化测试。 7. **安装使用文档**:通常会包含详细的步骤指南,帮助用户了解如何安装插件、配置环境和使用高级特性。 **definitions.json 配置文件*...

    易语言源码易语言JSON模块修改版源码.rar

    JSON模块通常会包含一系列与JSON相关的命令,如`JSON.解析字符串`、`JSON.生成字符串`等,用于处理JSON数据。 2. **修改版**:这个版本可能是对官方或社区版本的JSON模块进行的改进。可能的修改包括性能优化、错误...

    Android编程心得分享——JSON学习过程

    在Android编程中,JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,因其易于人阅读和编写,同时也易于机器解析和生成,被广泛应用在移动应用开发中,尤其是在Android平台上。JSON的优势在于它能以纯...

    jQuery JSON的解析方式分享

    JSON数据通常是由一系列的键值对组成的,其中值可以是字符串、数字、数组、布尔值甚至另一个JSON对象。因此,在处理这些数据时,可能需要根据具体结构进行递归处理,或者应用不同的逻辑来实现特定的功能。 在进行...

    jekyll-json-feeds:用于为您的Jekyll博客呈现JSON feed的模板

    JSON Feed是一种标准化的格式,用于分享博客文章和其他时间序列数据,类似于RSS和Atom。`jekyll-json-feeds` 是一个专门为Jekyll博客设计的模板,它可以生成符合JSON Feed规范的文件,让其他应用或服务能够轻松订阅...

    PyPI 官网下载 | drf-json-api-utils-2.0.59.tar.gz

    DRF是Django的一个强大框架,用于构建优雅且高效的APIs,而`drf-json-api-utils`则是这个框架的得力助手,它提供了一系列实用功能,以提高开发效率并增强API的可维护性。 首先,我们要理解Django REST Framework。...

Global site tag (gtag.js) - Google Analytics