fastjson

一:fastjson作用

1.将Java对象转换为json字符串====》响应给前端。

2.将json字符串转换为Java对象 ====》接受前端的json数据封装到对象中。


二:常用API

fastjson API 入口类是 com.alibaba.fastjson.JSON ,常用的序列化操作都可以在JSON类上的静态方法直接完成

1.在pom.xml下导入依赖

   <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>fastjson</artifactId>
            <version>1.2.47</version>
        </dependency>

2.在test包下创建User实体类

public class User {
    private String username;
    private String password;

    public User(){

    }

    public User(String username, String password) {
        this.username = username;
        this.password = password;
    }

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    @Override
    public String toString() {
        return "User{" +
                "username='" + username + '\'' +
                ", password='" + password + '\'' +
                '}';
    }
}

 三:fastjson案例

1.将实体类转换为json字符串

 @Test
    public void tset1(){
        //创建User对象
        User user = new User();
        //添加数据
        user.setUsername("李知恩");
        user.setPassword("zhienaini");
        /**
         * 使用fastjson的核心类JSON调用方法
         */
        String jsonString = JSON.toJSONString(user);
        System.out.println("jsonString = " + jsonString);

        //打印结果:
        /**
         * jsonString = {"password":"zhienaini","username":"李知恩"}
         */
    }

运行结果如下 :

2 .将单列集合转换为json字符串

   //将单列集合转换为json字符串
    @Test
    public void test2(){
        //创建集合对象
        ArrayList<Object> list = new ArrayList<>();
        //添加数据
        Collections.addAll(list,new User("张三","123456"),
                                new User("李四","1254360"),
                                new User("王五","789456"));

        //使用fastjson的核心类JSON调用方法
        String s = JSON.toJSONString(list);
        System.out.println("s = " + s);

        //打印结果:
        /**
         * s = [
         *      {"password":"123456","username":"张三"},
         *      {"password":"1254360","username":"李四"},
         *      {"password":"789456","username":"王五"}
         *    ]
         */
    }

3.将双列集合转换为json字符串

 //将双列集合转换为json字符串
    @Test
    public void test3(){
        //创建Map集合对象
        HashMap<Object, Object> hashMap = new HashMap<>();
        //添加数据
        hashMap.put("00001","库里");
        hashMap.put("00002",new User("哈登","1234"));
        //Map里面嵌套list集合
        List<Object> list1 = new ArrayList<>();
        Collections.addAll(list1,new User("库里1","159753"),
                                 new User("哈登1","156234"),
                                 new User("詹姆斯1","78456"));
        hashMap.put("00003",list1);
        //使用fastjson的核心类JSON调用方法
        String s = JSON.toJSONString(hashMap);
        System.out.println("s = " + s);

        //打印结果:
        /**
         * s = {"00002":{"password":"1234","username":"哈登"},
         * "00003":[{"password":"159753","username":"库里1"},{"password":"156234","username":"哈登1"},{"password":"78456","username":"詹姆斯1"}],
         * "00001":"库里"}
         */
    }

  • 8
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值