首页 > 人文 > >
孤独酒馆|jackson学习之六:常用类注解( 二 )
2026-08-05
来验证一下 , 如下所示 , TestChild类被JsonIgnoreType注解修饰: @JsonIgnoreTypestatic class TestChild {private int value;// 省去get、set、toString方法如下所示 , 再把TestChild作为Test类的成员变量: static class Test {private String field0;private TestChild field1;// 省去get、set、toString方法序列化操作的代码是JsonIgnoreTypeSerialization.java , 执行结果如下图 , 可见类型为TestChild的field1字段 , 在序列化的时候被忽略了: 再来试试反序列化 , 代码在JsonIgnoreTypeDeserializer.java , 如下图 , 可见带有注解JsonIgnoreType的类作为成员变量 , 在反序列化时会被忽略: JsonAutoDetect
序列化和反序列化时自动识别的范围 , 如下: @JsonAutoDetect(fieldVisibility = JsonAutoDetect.Visibility.PUBLIC_ONLY)public class College {private String name;private String city;protected int age = 100;fieldVisibility属性有以下值可选: ANY // 所有NON_PRIVATE // private之外的PROTECTED_AND_PUBLIC // protected和public的(此时privte和默认的package access时不能被自动识别的)PUBLIC_ONLY // public的NONE // 禁止自动识别DEFAULT // 默认的 , 用于继承父类的自动识别的范围验证 , 如下图 , College类设置了注解 , fieldVisibility是PUBLIC_ONLY , 红框中显示age字段是protected类型的: 序列化结果如下图红框 , age字段不是public , 所以没有输出: fieldVisibility改成NON_PRIVATE再试试: 如下图红框 , age不是private , 所以可以被序列化: JsonPropertyOrder
这个注解好理解 , 就是指定序列化的顺序 , 注意该注解仅在序列化场景有效; 先看看没有JsonPropertyOrder注解时的序列化顺序 , Test.java如下所示 , 是和代码的顺序一致的: static class Test {private String field0;private String field1;private String field2;// 省去get、set、toString方法此时对Test的实例做序列化操作 , 结果如下图 , 顺序和代码顺序一致:
推荐阅读
八佰|电影《八佰》花了5.5亿建了68栋楼,就是没花钱请流量……
#王牌对王牌#87岁表演艺术家,登上《王牌对王牌》舞台,最后镜头却被全部剪掉
汽车|C-NCAP最新车型评价结果公布:三款国产车全部是五星安全
柏林大教堂图片!德国举办2022柏林灯光节!本次灯光节都有哪些看点
北境不忘iPhone12 mini确认翻车,屏幕断触不灵(附解决方法)
「蛋蛋懂车」发生追尾事故,货车进入潍莱高速平度服务区时车速过快
『周劲松』平江小伙卖猪创业,卖风味小鱼年挣1亿!鱼类零食第一股将上市
【杭州网】数字乡村样板县长啥样?阿里巴巴携手浙江德清这样“造”
30岁单身女学历高中,零基础学习数据分析可行吗有啥好的建议
企业家|DCM董事总经理魏萌去世 知情人:上课时晕倒 该课程让学员产生负面情绪
仰卧撑运动园■精打细算的南大王这次亏了?,哥俩好!拜仁与国米酝酿骚操作
铁甲|沉海126年 18吨铁甲重见天日 定远舰水下考古有咱“扬家将”
仰卧撑运动园|状态飘忽射门找不到北,斯特林身价1亿5?英格兰球员一半是吹的