JavaBean和json互转 、List和Json互转、 map和json互转

java中 List、Map转成 Json对象

准备工作:
说明:转换时要引入一个jar包,我用的是Gson.ar
官方下载地址是: https://repo1.maven.org/maven2/com/google/code/gson/gson/2.8.6/
工具:idea
导入jar包后如图所示:
在这里插入图片描述
创建一个对象Persion:

package com.xu.po;

public class Persion {
    private Integer no;
    private String name;

    public Integer getNo() {
        return no;
    }

    public void setNo(Integer no) {
        this.no = no;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    @Override
    public String toString() {
        return "Persion{" +
                "no=" + no +
                ", name='" + name + '\'' +
                '}';
    }

    public Persion(Integer no, String name) {
        this.no = no;
        this.name = name;
    }
}

1.JavaBean和json互转

public static void toJson() {
        // 创建一个对象
        Persion persion = new Persion(1, "zs");

        // 引用Gson
        Gson gson = new Gson();

        // 对象转json
        String tojson = gson.toJson(persion);

        // 结果:{"no":1,"name":"zs"}
        System.out.println(tojson);

        //把json 转成Object对象
        Object obj = gson.fromJson(tojson, Persion.class);

        //结果:Persion{no=1, name='zs'}
        System.out.println(obj);
    }

2.List和Json互转

    public static void toJson2() {
        List<Persion> per = new ArrayList<>();
        per.add(new Persion(2, "ls"));
        per.add(new Persion(3, "ww"));
        
        Gson gson = new Gson();
       
        //List 转Json字符串
        String perListToJson = gson.toJson(per);
       
       // 结果:[{"no":2,"name":"ls"},{"no":3,"name":"ww"}]
        System.out.println(perListToJson);
        
        // Json 转 List
        List<Persion> list = gson.fromJson(perListToJson, new TypeToken<List<Persion>>() {}.getType());
       
        // 返回结果:[Persion{no=2, name='ls'}, Persion{no=3, name='ww'}]
        System.out.println(list);
    }

3.map和json互转

 public static void toJson3() {

        Map<Integer,Persion> persionMap = new HashMap<>();
        persionMap.put(1,new Persion(1, "ls"));
        persionMap.put(2,new Persion(3, "zs"));
        Gson gson = new Gson();
        String tojson = gson.toJson(persionMap);
        // 结果:{"1":{"no":1,"name":"ls"},"2":{"no":3,"name":"zs"}}
        System.out.println(tojson);
        Map<Integer,Persion> toMap = gson.fromJson(tojson,new TypeToken<Map<Integer,Persion>>(){}.getType());
        // 结果:{1=Persion{no=1, name='ls'}, 2=Persion{no=3, name='zs'}}
        System.out.println(toMap);
    }

最后在说一下 javaScript的 互相转换吧!
背景:前后端交互需要用json 相互传递数据
需要用的函数:
JSON.stringify(jsonObj) // 把json对象转成json字符串
JSON.parse(jsonStr)// 相反

Json的定义:

	json是由键值对组成,并且由花括号(大括号)包围。每个键由引号引起来,键和值之间使用冒号进行分隔,多组键值对之间进行逗号进行分隔。

key的值可以是:布尔类型 ,int类型,字符串,数组,对象。

上代码:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
		<title></title>
	</head>
	<script>
	
	//注意一下
	//大括号叫对象  { },里面包裹的是key和value,就是键值对.
	//中括号叫数组  [ ],  里面是,可以是json对象,字符串,
		//声明一个 json 对象
		var json = {
			"key1": 12,
			"key2": "str",
			"key3": {
				"key": 11,
				"key1": "str"
			},
			"key6": [22, "str"],
			"key5": [{
				"key": 11,
				"key1": "str"
			}, {
				"key": 11,
				"key1": "str"
			}],
			"key8": true
		}
		var str = JSON.stringify(json)
		alert(str);
		alert(JSON.parse(str));
	</script>
	<body>

	</body>
</html>

懒惰才是推动人类科技进步的原动力!

这篇文章的原因有两点:
一是为了备忘,毕竟好记性不如烂笔头!
二来是为了帮助其他像我一样正在为改变世界而努力的小白们对知识的探索与渴望!

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值