`
小网客
  • 浏览: 1247420 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

fastjson处理json实例

    博客分类:
  • Java
 
阅读更多

版本:

fastjson-1.1.28.jar

commons-lang-2.4.jar

概述:

fastjson为一款JSON 解析器和同时支持序列化操作,性能很高。

使用demo:

public class JsonVo {
	public JsonVo() {
		super();
	}

	public JsonVo(String id, String name) {
		super();
		this.id = id;
		this.name = name;
	}

	private String id;
	private String tid;
	private String name;
	private Set<String> set;

	public String getId() {
		return id;
	}

	public Set<String> getSet() {
    	return set;
    }

	public void setSet(Set<String> set) {
    	this.set = set;
    }

	public String getTid() {
		return tid;
	}

	public void setTid(String tid) {
		this.tid = tid;
	}

	public void setId(String id) {
		this.id = id;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	@Override
    public String toString() {
	    return "Tmp [id=" + id + ", name=" + name + ", set=" + set + ", tid=" + tid + "]";
    }
}

 使用:

JsonVo tmp = new JsonVo("id1", "name1");

String json = JSON.toJSONString(tmp);

System.out.println(json);
String jsonStr = "{\"id\":\"id1\",\"name\":\"name1\"}";
JSONObject jsonObject = JSONObject.parseObject(jsonStr);
System.out.println("->" + JSONObject.toJavaObject(jsonObject, Map.class));
System.out.println(JSON.toJavaObject(JSON.parseObject(jsonStr), JsonVo.class));
System.out.println(Boolean.valueOf(null));
Map<String, Float> map = new HashMap<String, Float>();
for (int i = 0; i < 100; i++) {
	String key = RandomStringUtils.random(3, "abcd");
	float value = RandomUtils.nextFloat();
	map.put(key, value);
}
System.out.println(map);
Map<String, Float> last = JSON.toJavaObject(JSONObject.parseObject(JSON.toJSONString(map)),
	Map.class);
Set<Entry<String, Float>> set = last.entrySet();

Iterator<Entry<String, Float>> entryIterator = last.entrySet().iterator();
while (entryIterator.hasNext()) {
	Entry<String, Float> entry = entryIterator.next();
	System.out.println(entry.getKey());
	System.out.println(entry.getValue());
}
System.out.println(last);
Set<String> hashSet = new HashSet<String>();
for (int i = 0; i < 100; i++) {
	String key = RandomStringUtils.random(3, "abcd");
	hashSet.add(key);
}
tmp.setSet(hashSet);

json = JSON.toJSONString(tmp);
System.out.println(json);

JsonVo tm = JSON.parseObject(json, JsonVo.class);
System.out.println(tm);
tm = JSON.parseObject(JSON.toJSONBytes(tm), JsonVo.class);

System.out.println("=>" + tm);
System.out.println("=>" + JSON.toJSONString(JSON.toJSONBytes(tm)));

 对于List<T>处理

List<T> list=JSON.parseArray(String text, T.class)

 对于Map<String,T>处理

Map<String, T> userMap = JSON.parseObject(text, new TypeReference<Map<String, T>>() {
			@Override
            public Type getType() {
	            return super.getType();
            }
			
});

 

1
4
分享到:
评论

相关推荐

    gson,fastJson,json-lib实例

    在这个实例中,我们将讨论三种流行的Java JSON库:Gson、FastJson和json-lib。 1. Gson: Gson是Google提供的一个开源库,它可以直接将Java对象转换成JSON字符串,也可以将JSON字符串反序列化为Java对象。Gson的...

    java FASTJSON 解析复杂JSON实例源码

    在这个实例中,我们将深入探讨如何使用Fastjson来解析复杂的JSON数据,并通过`JSONTest`这个示例代码来加深理解。 首先,让我们了解什么是JSON。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,...

    fastjson解析json.rar

    在Java开发中,Fastjson是阿里巴巴提供的一款高效且强大的JSON库,用于处理JSON与Java对象之间的转换。这个压缩包“fastjson解析json.rar”显然包含了使用Fastjson进行JSON解析的相关资源,包括fastjson的库文件、...

    fastjson+json jar包

    在描述中提到的"用于上个案例List,Object&gt;&gt;转换json的dome",这表明Fastjson可以处理复杂的数据结构,例如List集合中的Map对象。List, Object&gt;&gt;表示一个包含多个Map对象的列表,每个Map对象的键是String类型,值可以...

    gson,fastJson,json-lib测试与实例

    在Java世界里,处理JSON数据时我们通常会用到一些库,如Gson、FastJson和json-lib。这三个库都是为了方便JSON与Java对象之间的转换,使得数据的序列化和反序列化变得简单。 **Gson** 是Google开发的一个Java库,它...

    FastJson解析Json数据源码-旧版

    这个过程通常从`JSON.parse()`或`JSON.parseObject()`开始,这两个方法会根据输入的字符串创建一个`JSONLexer`实例,它是FastJson的词法分析器,用于读取并解析JSON文本。 `JSONLexer`会逐字符地扫描JSON字符串,...

    Json解析案例json,fastjson,gson

    本文将深入探讨三种广泛使用的JSON解析库:原生的`json`库,阿里巴巴的`fastjson`,以及Google的`gson`。 ### 1. 原生`json`库 Android系统内建了一个简单的`org.json`库,提供基本的JSON操作。它包括`JSONObject`...

    C#简单快速的json组件fastJSON使用介绍.docx

    首先,需要将 fastJSON 组件添加到项目中,然后可以使用 fastJSON 的实例来序列化和反序列化数据。 ```csharp namespace test { class Program { static void Main(string[] args) { var zoo1 = new zoo(); ...

    springboot实现FastJson解析json数据的方法

    FastJson支持泛型、支持循环引用、支持各种Java集合类型等特性使其在处理JSON数据时显得非常方便。 2. Spring Boot与FastJson集成: 在Spring Boot项目中集成FastJson,首先需要添加FastJson的依赖到项目的pom.xml...

    fastjson精简完整Web实例

    这个精简实例可能是为了演示如何在实际项目中使用Fastjson处理动态生成的JSON数据,从而提高开发效率和性能。它还可能涉及到错误处理、数据安全性和性能优化等更复杂的话题。总的来说,Fastjson是一个强大的工具,...

    fastjson完整使用案例

    在Java开发中,我们经常需要处理JSON格式的数据,Fastjson因其简洁的API和出色的性能,成为许多开发者首选的JSON解析工具。下面,我们将详细探讨Fastjson的使用方法和特性。 1. **安装与引入** 要使用Fastjson,...

    FastJson对于JSON格式字符串、JSON对象及JavaBean之间的相互转换操作

    在Java开发中,处理JSON数据时,FastJson是一个高效且功能丰富的库,由阿里巴巴提供。FastJson支持JSON格式字符串、JSON对象(JSONObject)以及JavaBean之间的相互转换,使得数据处理变得简单。以下将详细解释这些...

    Fastjson工具进行JSON序列化

    本文案例代码中,首先创建了一个简单的User类,然后创建了User对象并设置了属性,接着使用JSON.toJSONString()方法将对象序列化为JSON字符串。最后,打印出序列化后的JSON字符串。 重点说明了工具类fastjson 是怎么...

    fastjson-1.2.49.jar

    描述中提到"用于提取json数据",这正是Fastjson的主要功能之一,即快速、便捷地处理JSON格式的数据。 JSON,全称JavaScript Object Notation,是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和...

    Java读取json文件,并转化为map取值

    在这个方法中,我们创建了一个`ObjectMapper`实例,它是Jackson库的核心类,用于进行JSON与Java对象之间的映射。`readValue`方法接受两个参数:一个是JSON文件的路径,另一个是目标类型,这里是`Map.class`。 现在...

    fastjson的一个小例子

    在这个小例子中,我们将深入探讨FastJson的使用方法,以及它如何帮助开发者在Android开发中快速处理JSON数据。 在Android应用开发中,JSON是一种常见的数据交换格式,用于在服务器和客户端之间传递数据。FastJson以...

    快速json处理 fastjson-1.2.13

    - 从字符串解析为Java对象:Fastjson提供`JSON.parseObject()`方法,可以将JSON字符串转换成Java对象,如Map、List或自定义类实例。 - 从JSON流解析:支持从InputStream、Reader等输入流解析JSON数据。 2. **...

    JSON对象互转案例fastjson

    在这个"JSON对象互转案例fastjson"中,主要涉及了两个关键的API:`JSON.stringify()`和`JSON.parseArray()`。这两个方法都是Fastjson提供的,用于处理JSON对象与Java对象之间的转换。 1. `JSON.stringify()`: 这个...

    fastjson的各种用法例子

    通过以上实例,你可以了解Fastjson的基本用法,包括对象、数组的转换,JSON字符串的解析与构建,以及JSONPath和JSON Schema的使用。在实际项目中,结合这些知识点,你可以灵活地处理JSON数据。记住,实践是最好的...

    fastjson jar包

    5. **类型转换**:Fastjson支持自动类型转换,比如将JSON字符串转换为自定义Java类的实例,简化了开发工作。 6. **依赖库**:Apache Commons Codec和Commons Logging是Fastjson的依赖库,它们为Fastjson提供额外的...

Global site tag (gtag.js) - Google Analytics