JSON入门介绍以及fastjson应用

JSON简介:

json是一种轻量级的数据交换格式。采用完全独立于编程语言的文本格式来储存和表示数据。简洁和清晰的层次结构使得json成为理想的数据交换语言,易于阅读和编写,同时也易于机器解析和生成,并有效提高网络传输效率。json一般作用于前后端数据的交互,例如java和html前端的交换数据。是当今非常流行的前后端数据交换形式。

json用来表示 例如字符串,数字,数组,对象等,其中对象和数组是两种比较常见而且特殊的类型。一般表现形式为K-V对(键值对),数据由逗号分隔,由花括号保存json对象,例如:

{"name":"charles","age":"22"}

这是一个json对象。

方括号保存json数组,例如

[{"name":"tony","age":"22"},{"name":"jack","age":"23"},{"name":"joy","age":"24"}]

这是一个json对象数组。

例如在java中定义一个json字符串:

String strJson="{\"name\":\"charles\",\"age\":\"22\"}";

fastjson是一个性能很好的Java语言实现的JSON解和生成器,由阿里巴巴开发,是目前Java语言中最快的JSON库,fastjson简单易用,已被广泛使用在协议交互,web网站,Android客户端等多种应用场景。其主要特点是:快速,强大,零依赖。(可以去官网下载jar包)

fastjson的基本使用:

1.将对象转化为JSON字符串

2.将JSON串转化为对象

3.将集合转化为JSON字符串

4.将JSON字符串转化为集合

先定义一个基础的pojo类

package com.csdn.charles.pojo;

public class Person {
	private String cardNum; 
	private String name; 
	private int age; 

	public String getCardNum() {
		return cardNum;
	}

	public void setCardNum(String cardNum) {
		this.cardNum = cardNum;
	}

	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;
	}
}

fastjson基本使用Demo

package com.csdn.charles.fastjson;
import com.alibaba.fastjson.JSON;
import java.util.ArrayList;
public class FastJsonDemo {
	public static void main(String[] args) {

		//将对象转换JSON字符串
		Person person = new Person();
		person.setCardNum("123456");
		person.setName("charles");
		person.setAge(22);
		System.out.println(JSON.toJSONString(person));

		//将JSON字符串转换对象
		String strjson = "{cardNum : '23456' ,name : 'jhon', age : 66 }";
		// Person.class 固定格式 告诉JSON转换成Person对象
		Person person1 = JSON.parseObject(strjson, Person.class);
		
		//将集合转换JSON字符串
		Person person2 = new Person();
		person2.setCardNum("654321");
		person2.setName("jack");
		person2.setAge(23);
		
		ArrayList list = new ArrayList();
		list.add(person);
		list.add(person1);
		list.add(person2);
		System.out.println(JSON.toJSONString(list));

		//将JSON字符串转集合
		String strjson2 = "[{cardNum : '112233' ,name : 'charles', age : 22 },{cardNum : '223344' ,name : 'john', age : 33 }]";
		ArrayList jsonarray = JSON.parseObject(strjson2, ArrayList.class);
		System.out.println(jsonarray.get(0));
	}
}

有了fastjson可以轻易的将一些数据转化为json格式,如上所示,前端就能使用AJAX或者axios技术并利用这种json类数据来展示给客户,非常方便!

原创文章 42 获赞 72 访问量 8235

猜你喜欢

转载自blog.csdn.net/weixin_43249548/article/details/96916355