JSON解析与JSON化对象

网络传输脱离开饭环境的轻量级的一种格式JSON

<!--对象-->
    var p = new Object();
    p.name = "hhah";
    p.age="3243";
    p.address="北京";
   1:js对象json表示方法
    var j1 = {"name":"张三","age":232,"address":"北京"}
    document.write(j1.address+"   "+j1.age+"  "+j1.name+"<br>");
    
   2:数组的 json格式
    var nums = [12,32,23,43,54];
    document.write(nums[0]+" "+nums[2]+"<br>");
//    json格式字符串
    var str = '{"name":"zhangsan","age":23,"address":"beijing"}'
//    解析字符串
    var str2 = JSON.parse(str);
    document.write(str2.age+"解析 "+str2.name+"  "+str2.address+"<br>");
//把对象  数组转化为json格式
    var obj = JSON.stringify(p);
    document.write("对象json化<br>")
    document.write(obj);
    document.write("数组json化<br>")
    var  num = JSON.stringify(nums);
    document.write(num)
    

java解析和JSON化对象

FastJson
Person person = new Person(001, "hfh", 23, "beijijng");
Person person1 = new Person(002, "zxc", 23, "shanghai");
Person person2 = new Person(003, "asd", 89, null);
Person person3 = new Person();
ArrayList<Person> list = new ArrayList<>();
list.add(person);
list.add(person1);
list.add(person2);
list.add(person3);
String json  = JSON.toJSONString(list, SerializerFeature.WriteNullStringAsEmpty);
System.out.println(json);

//1.1控制不序列化某些属性  @JSONField(serialzale=false)
 1.         //1.2控制输出
 2.         // SerializerFeature.PrettyFormat
 3.         // SerializerFeature.WriteMapNullValue  null也输出
 4.         // SerializerFeature.WriteNullStringAsEmpty   null输出""
 5.         // 循环引用检测 SerializerFeature.DisableCircularReferenceDetect
JackJson
Person person = new Person(001, "hfh", 23, null);
Person person1 = new Person(002, "zxc", 23, "shanghai");
Person person2 = new Person(003, "asd", 89, null);
Person person3 = new Person();
//把p1转化为json  创建objectMapper对象
ObjectMapper objectMapper = new ObjectMapper();
objectMapper.enable(SerializationFeature.INDENT_OUTPUT);
objectMapper.disable(SerializationFeature.FAIL_ON_EMPTY_BEANS);
String json = objectMapper.writeValueAsString(person);
System.out.println(json);
ArrayList<Person> list = new ArrayList<>();
list.add(person1);
list.add(person2);
list.add(person2);
list.add(person3);
String string = objectMapper.writeValueAsString(list);
System.out.println(string);

解析json字符串
String json="{\"name\":\"张三\",\"age\":20,\"address\":\"杭州\"}";
ObjectMapper objectMapper = new ObjectMapper();
Person person = objectMapper.readValue(json, Person.class);
System.out.println(person);
//Jackson注解
//1 @JsonProperty注解指定一个属性用于JSON映射,默认情况下映射的JSON属性与注解的属性名称相同,不过可以使用该注解的value值修改JSON属性名
//2 @JsonIgnore注解用于排除某个属性,这样该属性就不会被Jackson序列化和反序列化。
//3 格式化输出
// 美化输出
//mapper.enable(SerializationFeature.INDENT_OUTPUT);
// 允许序列化空的POJO类(否则会抛出异常)
//mapper.disable(SerializationFeature.FAIL_ON_EMPTY_BEANS);

工具线上Json解析 idea GsonFormat

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值