JsonTools是一个不错的JSON序列化和反序列化功能包,在这里可以下载到它:http://jsontools.berlios.de/。
它有以下功能:
- Parser: Parse JSON text files and convert these to a Java model.
- Renderer: Render a Java representation into text.
- Serializer: Serialize plain POJO clusters to a JSON representation. The goal is to provide a serializing mechanism which can cope with all kinds of Java datastructures (recursion, references, primitive types, ...) .
- Mapper: Map POJO to JSON, this time the JSON text should be as clean as possible. This tool is the best choice when data has to be communicated between Java and other programming languages who can parse JSON.
- Validator: Validate the contents of a JSON file using a JSON schema.
如何使用呢?请参考下面我写的示例代码:
package test;
import java.io.StringReader;
import test.vo.ClientTicketOrder;
import test.vo.TicketItem;
import antlr.RecognitionException;
import antlr.TokenStreamException;
import com.sdicons.json.mapper.JSONMapper;
import com.sdicons.json.mapper.MapperException;
import com.sdicons.json.model.JSONValue;
import com.sdicons.json.parser.JSONParser;
public class TestJsonTools {
/**
* @param args
* @throws MapperException
* @throws RecognitionException
* @throws TokenStreamException
*/
public static void main(String[] args) throws MapperException, TokenStreamException, RecognitionException {
ClientTicketOrder order = new ClientTicketOrder();
order.setClientOrderNo("0812333");
TicketItem tItem = new TicketItem();
tItem.setPnr("UY8YG");
order.setTicketItems(new TicketItem[]{tItem});
//JavaBean to JSON
JSONValue jsonValue = JSONMapper.toJSON( order );
String jsonStr = jsonValue.render(false);
System.out.println(jsonStr);
//JSON to JavaBean
JSONParser parser = new JSONParser(new StringReader(jsonStr));
ClientTicketOrder u = (ClientTicketOrder) JSONMapper.toJava(parser.nextValue(), ClientTicketOrder.class);
System.out.println(u.getClientOrderNo() + " " + u.getTicketItems()[0].getPnr());
}
}
分享到:
相关推荐
Json序列化和反序列化是数据交换的一种常见方式,尤其在Web开发中广泛使用。它允许我们将对象转换为JSON(JavaScript Object Notation)格式的字符串,以便在网络上传输,然后在接收端将这些字符串还原为原来的对象...
C++的JSON序列化和反序列化是开发Web服务、网络通信或存储配置文件时必不可少的技术。选择合适的库并理解其工作原理,能帮助我们更高效地处理JSON数据。通过实践和学习,可以掌握更多高级技巧,如自定义序列化策略、...
总之,C#中的JSON序列化和反序列化是开发过程中不可或缺的一部分,它使得数据交换变得简单且高效。无论是使用内置的System.Text.Json还是第三方的Json.NET,都能帮助开发者轻松地在对象和JSON字符串之间转换,从而更...
Json.NET是.NET开发中广泛使用的第三方库,由James Newton-King 开发,它提供了一套高效且功能丰富的JSON序列化和反序列化的解决方案。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,常用于Web...
下面将详细介绍***中JSON序列化和反序列化的几种方法以及如何处理日期时间类型的序列化和反序列化。 首先,了解JSON的基本格式是非常重要的。JSON的数据结构由对象(Object)、数组(Array)、字符串(String)、数字...
本篇将深入探讨Delphi中的JSON序列化和反序列化技术。 一、JSON简介 JSON是一种独立于语言的数据表示格式,它基于ECMAScript的一个子集。一个有效的JSON对象通常包含键值对(key-value pairs)的集合,数组或其他...
一个c#的json序列化和反序列化类,调用很简单
总之,JSON序列化和反序列化在Web开发中扮演着核心角色,它们使数据能够在客户端和服务器之间以及本地存储中高效地传递和管理。通过理解并熟练运用这些概念,开发者能够构建出更加灵活和可扩展的应用程序。
C#-JSON序列化和反序列化辅助类
只要对json和序列化和反序列化总结,以及代码的案例:我们很多时候会涉及到几个序列化对象的使用:DataContractJsonSerializer,JavaScriptSerializer 和 Json.NET。
Jackson是Java领域中广泛使用的JSON处理库,它提供了高效的JSON序列化和反序列化功能。在Java应用程序中,我们经常需要将Java对象转换为JSON字符串(序列化)或从JSON字符串恢复Java对象(反序列化),Jackson库就是...
基于Json序列化和反序列化通用的封装完整代码是指使用JsonHelper类来实现Json序列化和反序列化的功能。该类提供了多种方法来实现Json序列化和反序列化,包括使用Newtonsoft.Json和System.Runtime.Serialization.Json...
总结,Java中的JSON序列化与反序列化是数据交互的重要环节,Jackson和Gson是两个常用的库,它们提供了丰富的功能和良好的API设计,使得处理JSON数据变得简单高效。通过理解和掌握这些知识,开发者可以更好地在Java...
在.NET开发中,C#语言提供了多种方式来处理JSON序列化和反序列化,这对于数据交换和存储至关重要。本文将详细介绍C#中处理JSON的三种主要方法:使用Json.NET库(Newtonsoft.Json)、使用.NET Framework自带的System....
JsonTools是一个不错的JSON序列化和反序列化功能包
在这个“纯C语言编写的json库,可以进行json序列化和反序列化.zip”压缩包中,包含的是一个名为JsonLib-master的项目,它为C语言开发者提供了解析和生成JSON数据的功能。 JsonLib是一个用C语言实现的JSON库,它的...
本文将详细介绍 C# 中的 JSON 序列化和反序列化,包括使用 Newtonsoft.Json 库来实现 JSON 序列化和反序列化。 一、JSON 序列化 JSON 序列化是指将 .NET 对象转换为 JSON 字符串的过程。在 C# 中,我们可以使用 ...