java代码如何实现对象和json之间的互相转换呢?

乔欣 Java经验 发布时间:2022-12-13 09:20:11 阅读数:9858 1
下文笔者将讲述对象和json之间的相互转换方法分享,如下所示

对象与json互转

实现思路:
     使用gson-2.8.0.jar包
	 即可实现对象和json之间的相互转换
 如:
    使用gson.fromJson将json字符串转换为对象
	使用gson.toJson将对象转换为json字符串

使用gson将对象和json字符串互转的示例分享

public class User {
    private String id;
    private String username;
 
    public User(String id, String username) {
        this.id = id;
        this.username = username;
    }
 
    @Override
    public String toString() {
        return "User{" +
                "id='" + id + '\'' +
                ", username='" + username + '\'' +
                '}';
    }
}

public class Test {
    public static void main(String[] args) {
        //将对象转换成json格式的字符串
        User user = new User("1", "猫猫");
        Gson gson = new Gson();
        String s = gson.toJson(user);
        System.out.println("将对象转换成json格式的字符串\t\t"+s);
 
        //将json格式的字符串转对象,底层是通过反射来完成的
        User user1 = gson.fromJson(s, User.class);
        System.out.println(user1);
 
        //将list集合转换成json格式的字符串
        ArrayList<User> list = new ArrayList<>();
        list.add(new User("1","禹宙"));
        list.add(new User("2","圆圆"));
        list.add(new User("3","鱼鱼"));
        String s1 = gson.toJson(list);
        System.out.println(s1);
        //将list类型的json格式的字符串转成对象
        Type type = new TypeToken<ArrayList<User>>() {
        }.getType();
        Object o = gson.fromJson(s1, type);
        System.out.println(o);
 
        //将map集合转成json格式的字符串
        HashMap<String, String> hashMap = new HashMap<>();
        hashMap.put("a","琳琳");
        hashMap.put("b","李彩");
        hashMap.put("c","小何");
        String s2 = gson.toJson(hashMap);
        System.out.println(s2);
        //将map类型的json格式的字符串转成对象
        Type type1 = new TypeToken<HashMap<String, String>>() {
        }.getType();
        Object o1 = gson.fromJson(s2, type1);
        System.out.println(o1);
    }
}

版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

本文链接: https://www.Java265.com/JavaJingYan/202212/16708955115135.html

最近发表

热门文章

好文推荐

Java265.com

https://www.java265.com

站长统计|粤ICP备14097017号-3

Powered By Java265.com信息维护小组

使用手机扫描二维码

关注我们看更多资讯

java爱好者