首页 > 人文 > >
孤独酒馆|jackson学习之六:常用类注解( 二 )
2026-08-28
来验证一下 , 如下所示 , 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的实例做序列化操作 , 结果如下图 , 顺序和代码顺序一致:
推荐阅读
嘻哈飞车族|四摄泡汤!iPhone12再遇反转:快充/高刷缺席、外观设计大改
心花N怒放|这一次果真没让我们失望,哈哈,搞笑GIF:面瘫哥
科技美学OPPO Reno4工信部入网信息曝光:后置三摄、765G、65W快充
#京东#支付宝上线“蚂蚁合花”服务 支持两人共同攒钱、管理账单;网易严选退出今年双十一;Nik
最美的爱|吃任何他手上的东西,贪得无厌的10岁男孩体重90公斤
海峡网|清晨的启明星傍晚的长庚星都是指什么?,蚂蚁庄园5月28日答题答案
复工企业如何保证业务高效开展?T+Cloud让业绩增长30%不是梦!
『无症状』福建6例境外输入无症状感染者集中隔离观察 复工复产复学有序推进
|筱辉生日宴请全体成员,唯独小胖没吃蛋糕,筱辉:给了没吃
『地下城与勇士』DNF:神器天空套成今年最大“背刺”,玩家愤怒退坑,碎装备脱坑
陆树铭|陆树铭:我这辈子最错误的决定,就是和周星驰合作!
江浙沪周边|国庆假期去哪玩?来浙江国际赛车场cos《极速车王》
尼格买提:我30岁迎娶帕夏古丽,结婚9年没生孩子,风光背后有泪水
从成都到北京是①坐飞机直达②先坐飞机到天津再坐动车到北京 哪个更划算