JSON概述之FASTJSON解析

什么是JSON?

JSON(JavaScript Object Notation ,JS对象标记)是一种轻量级的数据交换格式,目前使用特别官方
在JS语言中,一切都是对象,因此,任何JS支持的类型都可以通过JSON来表示,例如字符串、数字、对象、数组等。
JSON是JS对象的字符串表示法,它使用文本表示一个JS对象的信息,本质是一个字符串。

var obj = {a:'Hello',b:'World'};
var json = '{"a":"Hello","b":"World"}';

二、JSON和JS对象互转

要实现从JSON字符串转换为JS对象,使用JSON.parse()方法:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<script type="text/javascript">
    var a = {
        name: "lyx",
        age: 3,
        sex: "女"
    };
    //输出以下这个对象
    console.log(a);
    //将js对象转换为json字符串
    var str = JSON.stringify(a);
    console.log(str);
    var obj = JSON.parse(str);
    console.log(obj);
</script>
</body>
</html>

在这里插入图片描述

三、FASTJSON解析类对象

导入包:fastjson-1.2.80.jar

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.cn.entity.User;

public class TestJson {
    public static void test(){
        User user = new User();
        user.setId(1);
        user.setUsername("zhangsan");
        user.setPhone("12322321111");
        user.setAddress("中原工学院");
        String str = JSON.toJSONString(user);
        System.out.println(str);
    }
输出结果
{"address":"中原工学院","id":1,"phone":"12322321111","username":"zhangsan"}
   public static void main(String[] args) {
        test2();
  }
    public static void test2(){
        String mess="{\"address\":\"中原工学院\",\"id\":1,\"phone\":\"12322321111\",\"username\":\"zhangsan\"}";
        //没有指定类名,输出结果是Object类型
        JSONObject jsonObject = JSON.parseObject(mess);
        System.out.println(jsonObject);
        //指定类名,输出结果是User类型
        User user = JSON.parseObject(mess,User.class);
        //重写toString()方法,两种方法一样
        System.out.println(user);
        System.out.println(user.toString());
    }
}

输出结果
{"address":"中原工学院","phone":"12322321111","id":1,"username":"zhangsan"}
User{id=1, username='zhangsan', phone='12322321111', address='中原工学院', email='null'}
User{id=1, username='zhangsan', phone='12322321111', address='中原工学院', email='null'}

四、jackson

导入包jackson-databind-2.13.2.2.jar

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

素心如月桠

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值