`

Fastjson

    博客分类:
  • java
阅读更多
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.TypeReference;
import com.alibaba.fastjson.serializer.SerializeConfig;
import com.alibaba.fastjson.serializer.SimpleDateFormatSerializer;

public class FastjsonTest {

static Map<String,Object> m=new HashMap<String,Object>();
static Person p=new FastjsonTest().new Person();
static List<Person> list=new ArrayList<Person>();
static Clazz cz=new FastjsonTest().new Clazz();


public static void main(String[] args) {
// toString(m);

// toString(p);

// toString(list);

// toString(cz);

// parse("");

// parse("",null);

parse("",null,null);
}

static void toString(Map<String,Object> m){
//String res=JSON.toJSONString(m);
String res=JSON.toJSONString(m,mapping);
System.out.println(res);
}

static void toString(Person p){
String res=JSON.toJSONString(p,mapping);
System.out.println(res);
}

static void toString(List<Person> list){
String res=JSON.toJSONString(list,mapping);
System.out.println(res);
}

static void toString(Clazz cz){
String res=JSON.toJSONString(cz,mapping);
System.out.println(res);
}

static void parse(String json){
String js="{\'bir\':\'2020-04-15 12:02:07\'}";
Map m=JSONObject.parseObject(js, Map.class);
System.out.println(m.get("bir"));
}

static void parse(String json,Class c){
String js="[{\'age\':66,\'birth\':\'2020-04-15 12:02:07\',\'name\':\'lisi0\'},{\'age\':67,\'birth\':\'2020-04-15 12:02:07\',\'name\':\'lisi1\'}]";
List list=JSONObject.parseArray(js, Map.class);
System.out.println(list.size());
}

static void parse(String json,Class c,String s){
String js="{\'cname\':\'一班\',\'persons\':[{\'age\':66,\'birth\':\'2020-04-15 12:02:07\',\'name\':\'lisi0\'},{\'age\':67,\'birth\':\'2020-04-15 12:02:07\',\'name\':\'lisi1\'}]}";
Map mm=JSONObject.parseObject(js, Map.class);
CA<PersonA> cc=JSONObject.parseObject(js, new TypeReference<CA<PersonA>>(){});
System.out.println(cc.getPersons().size());
}
//测试数据
static {
m.put("name", "王五");
m.put("age", 22);
m.put("bir", new Date()); //日期

p.setName("lisi");
p.setAge(66);
p.setBirth(new Date());

for(int i=0;i<2;i++){
Person per=new FastjsonTest().new Person();
per.setName("lisi"+i);
per.setAge(66+i);
per.setBirth(new Date());
list.add(per);
}

cz.setCname("一班");
cz.setPersons(list);
}

//对日期的序列化
static SerializeConfig mapping = new SerializeConfig(); 
static String dateFormat; 
static { 
    dateFormat = "yyyy-MM-dd HH:mm:ss"; 
    mapping.put(Date.class, new SimpleDateFormatSerializer(dateFormat)); 
}

class Person{
String name;
int age;
Date birth;
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 Date getBirth() {
return birth;
}
public void setBirth(Date birth) {
this.birth = birth;
}
}

class Clazz{
String cname;
List<Person> persons;
public String getCname() {
return cname;
}
public void setCname(String cname) {
this.cname = cname;
}
public List<Person> getPersons() {
return persons;
}
public void setPersons(List<Person> persons) {
this.persons = persons;
}
}
}

class PersonA{
String name;

public String getName() {
return name;
}

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

class CA<T>{
String cname;
List<T> persons;
public String getCname() {
return cname;
}
public void setCname(String cname) {
this.cname = cname;
}
public List<T> getPersons() {
return persons;
}
public void setPersons(List<T> persons) {
this.persons = persons;
}
}
分享到:
评论

相关推荐

    fastjson1.2.2.jar

    《深入理解Fastjson:阿里巴巴的高效JSON库》 在当今的软件开发中,JSON作为一种轻量级的数据交换格式,被广泛应用于服务器与客户端之间的数据传输。而Fastjson,由阿里巴巴公司开发,是一款性能优秀且易用的Java...

    fastjson-1.2.54-API文档-中文版.zip

    赠送jar包:fastjson-1.2.54.jar; 赠送原API文档:fastjson-1.2.54-javadoc.jar; 赠送源代码:fastjson-1.2.54-sources.jar; 赠送Maven依赖信息文件:fastjson-1.2.54.pom; 包含翻译后的API文档:fastjson-...

    fastjson-1.2.51-API文档-中文版.zip

    赠送jar包:fastjson-1.2.51.jar; 赠送原API文档:fastjson-1.2.51-javadoc.jar; 赠送源代码:fastjson-1.2.51-sources.jar; 赠送Maven依赖信息文件:fastjson-1.2.51.pom; 包含翻译后的API文档:fastjson-...

    Android FastJSON小示例

    在Android开发中,数据交换和序列化是常见的需求,FastJSON是阿里巴巴提供的一款高效、功能丰富的JSON库,它被广泛应用于Android Studio项目中。本文将详细介绍如何在Android Studio中使用FastJSON进行JSON解析和...

    fastjson-1.2.17-API文档-中文版.zip

    赠送jar包:fastjson-1.2.17.jar; 赠送原API文档:fastjson-1.2.17-javadoc.jar; 赠送源代码:fastjson-1.2.17-sources.jar; 赠送Maven依赖信息文件:fastjson-1.2.17.pom; 包含翻译后的API文档:fastjson-...

    Fastjson1.2.47以及之前的所有版本

    **Fastjson:一个高效、强大的Java JSON库** Fastjson是阿里巴巴开发的一个开源项目,它是一个Java语言编写的高性能功能完备的JSON库。Fastjson能够将Java对象转换为JSON字符串,也能将JSON内容转换为对应的Java...

    fastjson-1.2.72-API文档-中文版.zip

    赠送jar包:fastjson-1.2.72.jar; 赠送原API文档:fastjson-1.2.72-javadoc.jar; 赠送源代码:fastjson-1.2.72-sources.jar; 赠送Maven依赖信息文件:fastjson-1.2.72.pom; 包含翻译后的API文档:fastjson-1.2....

    fastjson-1.1.37-API文档-中文版.zip

    赠送jar包:fastjson-1.1.37.jar; 赠送原API文档:fastjson-1.1.37-javadoc.jar; 赠送源代码:fastjson-1.1.37-sources.jar; 赠送Maven依赖信息文件:fastjson-1.1.37.pom; 包含翻译后的API文档:fastjson-...

    fastjson的一个小例子

    **FastJson:一个高效、强大的Java JSON库** FastJson是阿里巴巴开源的一款高性能的JSON库,它主要用于Java对象与JSON字符串之间的转换。在这个小例子中,我们将深入探讨FastJson的使用方法,以及它如何帮助开发者...

    fastjson-1.2.78-API文档-中文版.zip

    赠送jar包:fastjson-1.2.78.jar; 赠送原API文档:fastjson-1.2.78-javadoc.jar; 赠送源代码:fastjson-1.2.78-sources.jar; 赠送Maven依赖信息文件:fastjson-1.2.78.pom; 包含翻译后的API文档:fastjson-1.2....

    fastjson-1.2.38的官方jar包合集【fastjson-1.2.38.jar,fastjson-1.2.38-sources.jar】

    这个压缩包集合包含了Fastjson的1.2.38版本,具体包括三个重要的组成部分:`fastjson-1.2.38.jar`(核心运行时库)、`fastjson-1.2.38-sources.jar`(源代码)以及`fastjson-1.2.38-javadoc.jar`(API文档)。...

    fastjson-1.2.9.jar.zip

    **Fastjson 深度解析** Fastjson 是阿里巴巴开发的一款高效、功能强大的 JSON 解析库,广泛应用于 Java 开发环境中。其主要特点是性能优异,易用性好,且具有丰富的功能,使得它在处理 JSON 数据时能提供极高的效率...

    Alibaba Fastjson Jar包.zip

    Fastjson是阿里巴巴开发的一款高效、功能丰富的JSON库,主要用于Java平台。它提供了快速解析和生成JSON的能力,使得在Java程序中处理JSON数据变得极其便捷。这个"Alibaba Fastjson Jar包.zip"文件包含了Fastjson库的...

    fastjson定制工程,别名配置化

    标题中的“fastjson定制工程,别名配置化”指的是对Fastjson库的扩展,使其能够支持动态配置字段别名,而不是像原生Fastjson那样只能硬编码(hardcode)在代码中。这样的改进对于处理与第三方接口交互时,字段名称...

    fastjson-1.2.4.jar

    《深入解析Fastjson-1.2.4.jar》 Fastjson是阿里巴巴开发的一款高效、功能强大的JSON库,广泛应用于Java开发领域。它以其简洁的API、卓越的性能以及对Java对象与JSON数据之间的无缝转换而备受赞誉。在这个讨论中,...

    最新fastJSON C#的JSON开发包 v2.1.18

    **FastJSON for C#:深度解析与应用** FastJSON 是一个高效的 JSON 序列化和反序列化库,尤其在C#开发环境中被广泛应用。它以其轻量级、快速和简单的特点,使得处理JSON数据变得极其便捷。在这个最新的版本 v2.1.18...

    各个版本fastJson_jar包最新版

    Fastjson是阿里巴巴开发的一款高性能的Java语言JSON库,它的全称是Fast Java Object to JSON and JSON to Java Object,主要用于处理JSON格式的数据。在Java开发中,JSON作为一种轻量级的数据交换格式,广泛应用于...

    java FASTJSON 解析复杂JSON实例源码

    Java中的Fastjson是一个高效、功能丰富的JSON库,由阿里巴巴开发并维护。它提供了一种简单的方式来序列化和反序列化Java对象,使得处理JSON数据变得轻而易举。在这个实例中,我们将深入探讨如何使用Fastjson来解析...

    fastjson-1.2.78.jar.zip

    《深入解析Fastjson-1.2.78.jar在JavaWeb开发中的应用》 Fastjson是阿里巴巴开源的一个高性能的JSON库,它具有轻量级、快速、易用的特点,广泛应用于JavaWeb开发中。在标题提及的"fastjson-1.2.78.jar.zip"压缩包中...

    fastjson-1.2.58.rar

    《Fastjson:Java环境下的JSON与XML互转利器》 Fastjson是阿里巴巴开发的一个高性能的Java库,专门用于处理JSON数据。它不仅能够快速地解析和生成JSON,而且支持将JSON对象与Java对象互相转换,这在Java开发中非常...

Global site tag (gtag.js) - Google Analytics