`

转载JSON Format(二)

    博客分类:
  • JSON
阅读更多
转载http://blog.toright.com/?p=397
JSON Format
JSON為輕量級的資料表示格式,比起 XML 鬆散許多且不需要定義描述檔,JSON網站 http://json.org/

Json-lib API
Json-lib 為在眾多處理 Jsob Format API 中實作功能比較多的一個套件,可由下列網址取得。

http://json-lib.sourceforge.net/ 此外,Json-lib還需要以下 Library

jakarta commons-lang 2.4
jakarta commons-beanutils 1.7.0
jakarta commons-collections 3.2
jakarta commons-logging 1.1.1
ezmorph 1.0.6
JSON 與 POJO 轉換實作
設計兩個Model

Model.java

private String title;
	private int num;
	private Integer sort;
	private Date date;
	private String[] strArray;
	private SubModel subModel;
SubModel.java

private String name;
Marshal 實作
Object2JSON.java

import java.util.Date;

import net.sf.json.JSONObject;

public class Object2JSON {

	public static void main(String[] args) {
		//產生Model
		Model model = new Model();
		model.setTitle("Master MOdel");
		model.setNum(99);
		model.setSort(10);
		model.setDate(new Date());
		model.setStrArray(new String[]{"str1","str2"});
		SubModel subModel = new SubModel();
		subModel.setName("MySubModel");
		model.setSubModel(subModel);
		//轉換為JSON
		String json = JSONObject.fromObject(model).toString();
		//顯示XML
		System.out.println(json);
	}

}
Unmarshal 實作
JSON2Object.java

import net.sf.json.JSONObject;

public class JSON2Object {

	public static void main(String[] args) {
		String json = "{\"date\":{\"date\":27,\"day\":2,\"hours\":15,\"minutes\":30,\"month\":9,\"seconds\":35,\"time\":1256628635421,\"timezoneOffset\":-480,\"year\":109},\"num\":99,\"sort\":10,\"strArray\":[\"str1\",\"str2\"],\"subModel\":{\"name\":\"MySubModel\"},\"title\":\"Master MOdel\"}";
		//轉換JavaBean
		Model model = (Model)JSONObject.toBean( JSONObject.fromObject( json ), Model.class );
		//顯示內容
		System.out.println("Title:"+model.getTitle());
		System.out.println("Num:"+model.getNum());
		System.out.println("Sort:"+model.getSort());
		System.out.println("Date:"+model.getDate());
		System.out.println("SubModel:"+model.getSubModel());
		System.out.println("SubModel[Name]:"+model.getSubModel().getName());
	}

}
Json-lib 結論
過測試之後發現 Json 對 Array 是支援的,但是對於 List 與 Hashtable 的 Unmarshal 卻是不支援。假設 Json 未來成為 Web Service 重要的傳輸格式,那麼實作 Json 更高階的 Unmarshal 是絕對必要的工作。

分享到:
评论

相关推荐

    JsonFormat java android

    "JsonFormat"在这里指的是一款本地工具,用于帮助开发者更方便地对JSON数据进行格式化,使其更易读。 在Windows环境下,开发者经常需要处理来自服务器的JSON响应或者在代码中创建JSON字符串。"JsonFormat"这款工具...

    @JsonFormat的使用jackson-annotations

    本文将深入探讨`@JsonFormat`注解的使用,以及它在Jackson库中的作用,特别是与`jackson-annotations.jar`、`jackson-core.jar`和`jackson-databind.jar`这三个核心组件的关系。 首先,让我们了解Jackson的基本构成...

    JsonFormat.js(editplus格式化 json插件)

    editplus格式化 json插件 使用:自定义工具 》命令 》Cscript.exe /nologo "D:\JsonFormat.js" 注意地址需要用引号

    JsonFormat.zip

    JSONFormat.zip这个压缩包提供了一个JSON解析工具,帮助用户更方便地处理和理解JSON格式的数据。 JSON的基本数据类型包括字符串(String)、数字(Number)、布尔值(Boolean)、数组(Array)、对象(Object)和...

    JsonFormat格式化工具

    JsonFormat格式化工具,优化调整格式视图,好用速来,

    win 10 环境下Json format 字符串本地格式化工具

    这个工具,JsonFormat.exe,是一个专门为Windows 10设计的应用程序,其主要功能是将未格式化的JSON字符串转化为整洁、易读的格式。通过这个工具,你可以轻松地检查和理解JSON数据的结构,而无需手动去解析和整理。它...

    JSONFormat.exe

    基于Java Swing的json字符串格式化工具,敏捷,高效,即时即用 基于Java Swing的json字符串格式化工具,敏捷,高效,即时即用

    jpush.dll 修改了should be JSON format的bug

    这是之前在网上下载的一个dll, 在使用的时候 传入extras的参数时,正确的json格式会报 should be JSON format的错误, 后面自己反编译之后, 修改了一下, 现在在传参时, title, content 均为string即可, extras...

    JsonFormat.exe

    JSON格式转换软件适用于json格式转换和字符串长度的各项统计

    jsonformat.exe

    json离线解析格式化工具:当没有网络的时候,可以使用该工具实现json解析格式化。基于Python语言写的。

    JSONFormat-master.zip

    JSONFormat-master.zip是一个压缩包,包含了用于JSON格式化的工具,特别强调了其绿色无污染的特点,意味着它无需安装,解压后即可直接运行。这个工具主要用于美化和整理JSON字符串,使得数据更易于阅读和理解。它...

    Java对象转json JsonFormat注解

    解决方法二提到,即使不提供getter方法,只需在字段上添加`JsonFormat`注解,Jackson也会尝试序列化该字段。这是因为`JsonFormat`注解告诉Jackson应该处理这个字段,即使它没有getter。然而,这并不是一种推荐的做法...

    Json.Prettify.rar_JSON_conditionwrz_json format

    在"Json.Prettify.rar_JSON_conditionwrz_json format"这个压缩包中,我们主要关注的是JSON的格式化和条件处理。 首先,JSON的基本结构包括对象和数组。对象是以花括号 `{}` 包围的键值对集合,键用双引号引用,...

    jsonFormat:json格式

    JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,它基于JavaScript的一个子集,设计简单易读,同时也易于机器解析和生成。JSON格式被广泛应用于Web服务与客户端之间的数据传输,因为它允许开发者以...

    JsonFormat.rar

    "JsonFormat.rar"这个压缩包显然包含了处理JSON格式的工具——JsonFormat.exe。这可能是一个命令行工具或图形用户界面应用,用于帮助开发者和程序员解析、格式化、验证或转换JSON数据。在处理复杂的API调用、数据...

    json服务器端格式化jar包

    JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,广泛用于服务器与客户端之间的数据通信,尤其是在Web开发中。Java语言提供了多种库来处理JSON,其中`json-server端格式化jar包`提供了一种便捷的...

    EchaetJSON地图切分教程、含JSONFormat工具和省市地图数据.rar

    在本教程中,我们将深入探讨如何使用Echarts与JSON数据进行地图切分,以及如何利用提供的JSONFormat工具处理省市地图数据。Echarts是一款强大的、基于JavaScript的数据可视化库,广泛应用于网页图表的绘制,包括地图...

    JsonFormat与@DateTimeFormat注解实例解析

    `JsonFormat` 和 `@DateTimeFormat` 这两个注解分别来自于Jackson库和Spring框架,它们都用于处理日期时间的格式化,但应用场景略有不同。 ## 1. `@JsonFormat` 注解 `@JsonFormat` 是Jackson库中的注解,主要用于...

    Notepad ++ 离线安装JsonFormat插件:NPPJSONViewer.zip

    Notepad ++ 离线安装JsonFormat插件,安装方法:打开Notepad++, 点击菜单栏“插件”,下拉点击“打开插件文件夹...”,把NPPJSONViewer.zip复制到打开窗口,解压,重启Notepad++就OK了。

Global site tag (gtag.js) - Google Analytics