JSON与Java解析入门教程

一、JSON是什么?

JSON是JavaScript Object Notation JS对象简谱 , 是一种轻量级的数据交换格式.

二、JSON相对于其他语言的编码格式

一、JSON的对象格式

  • 一个对象, 由一个大括号表示
  • 括号中通过键值对来描述对象的属性,键值对的键应使用 “” 引号引住
  • 键与值之间使用冒号连接, 多个键值对之间使用逗号分隔
  • 键值对的值, 可以是JS中的任意类型的数据

1.java

代码如下:

	class Book{
 		private String name;
 		private String info;
		get/set... 
	}
	Book b = new Book(); 
	b.setName("大苹果"); 
	b.setInfo("吃苹果");

2.js

代码如下:

var b = new Object(); 
b.name = "大苹果"; 
b.info = "吃苹果";

3.XML

代码如下:

<book>
	<name>大苹果</name> 
	<info>吃苹果</info>
</book>

4.JSON

代码如下:

{ 
	"name":"大苹果", 
	"info":"吃苹果" 
}


二、JSON的数组格式

在JSON格式中可以与对象互相嵌套
[元素1,元素2…]

代码如下:

{ 
	"name":"张三", 
	"age":20,
 	"friend":["二狗","李四","王二","麻子",{
  			"name":"小贾", 
 	 		"info":"像匹野马一样狂奔在技术钻研的道路上"  
 	 		}],
   	"heihei":{
   		"name":"大长刀",
   		"length":"40m" 
    } 
}

三、JSON的两种转换方法(Gson,FastJson)

使用的两个库链接(百度网盘):https://pan.baidu.com/s/1yR1C_HXCRj9JunDsipHftg
提取码:k3m7

1.使用Gson

  • 将对象转换为JSON字符串
  1. 引入JAR包
  2. 在需要转换JSON字符串的位置编写如下代码即可:
    String json = new Gson().toJSON(要转换的对象);

案例
代码如下:

class Book{
 		private String id;
   	 	private String name;
   	 	private String info;
		get/set... 
	}
	
public static void main(String[] args) {
 	 	//创建Gson对象
        Gson g = new Gson();
        //转换
        Book book = new Book("100", "银苹果", "苹果腐烂的故事");
        String s = g.toJson(book);
        System.out.println(s);

运行结果

{"id":"100","name":"银苹果","info":"苹果腐烂的故事"}
  • 将JSON字符串转换为对象
  1. 引入JAR包
  2. 在需要转换Java对象的位置, 编写如下代码:
    对象 = new Gson().fromJson(JSON字符串,对象类型.class);

案例
代码如下:

 public static void main(String[] args) {
//创建Gson对象
        Gson g = new Gson();
        //转换 {"id":"100","name":"银苹果","info":"苹果腐烂的故事"}
        Book book = g.fromJson("{\"id\":\"100\",\"name\":\"银苹果\",\"info\":\"苹果腐烂的故事\"}", Book.class);
        System.out.println(book);  
}

运行结果

Book{id='100', name='银苹果', info='苹果腐烂的故事'}

2.使用FastJson

  • 将对象转换为JSON字符串
  1. 引入JAR包
  2. 在需要转换JSON字符串的位置编写如下代码即可:
    String json=JSON.toJSONString(要转换的对象);

案例
代码如下:

 public static void main(String[] args) {
        Book b = new Book("1002","一二三四五","上山打老虎");
        String s = JSON.toJSONString(b);
        System.out.println(s);
    }

运行结果

{"id":"1002","info":"上山打老虎","name":"一二三四五"}
  • 将JSON字符串转换为对象
  1. 引入JAR包
  2. 在需要转换Java对象的位置, 编写如下代码:
    类型 对象名=JSON.parseObject(JSON字符串, 类型.class);

    List<类型> list=JSON.parseArray(JSON字符串,类型.class);

案例
代码如下:

 public static void main(String[] args) {
       //转换:{"id":"1002","info":"上山打老虎","name":"一二三四五"}
        Book book = JSON.parseObject("{\"id\":\"1002\",\"info\":\"上山打老虎\",\"name\":\"一二三四五\"}", Book.class);
        System.out.println(book);
    }

运行结果

Book{id='1002', name='一二三四五', info='上山打老虎'}

四、总结

以上就是java与Json互转对象与字符串

刚刚开始写文章,大家多多支持!!!!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值