json过滤某些属性 之@jsonignore

来源:互联网 发布:福建摩尔软件靠谱吗 编辑:程序博客网 时间:2024/05/17 23:33

Jackson相关:

使用Jackson相关的注解时一定要注意自己定义的属性命名是否规范。 
命名不规范时会失去效果。(例如Ename ,Eage 为不规范命名。“nameE”,“ageE”为规范命名)我在此处掉坑半个小时。至于命名规范,大家自己搜索。其实不要太奇葩的命名都是可以得。

如果使用@JsonIgnore注解不起效时请注意一下你的属性名字是否规范

1、@JsonIgnoreProperties

此注解是类注解,作用是json序列化时将java bean中的一些属性忽略掉,序列化和反序列化都受影响。

写法将此标签加在model 类的类名上 ,可以多个属性也可以单个属性

//生成json时将name和age属性过滤@JsonIgnoreProperties({"name"},{"age"})public class  user {private  String name;private int age;}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

2、@JsonIgnore

此注解用于属性或者方法上(最好是属性上),作用和上面的@JsonIgnoreProperties一样。

生成json 时不生成age 属性 

public class user { 
private String name; 
@JsonIgnore 
private int age; 

3、@JsonFormat

此注解用于属性或者方法上(最好是属性上),可以方便的把Date类型直接转化为我们想要的模式,比如@JsonFormat(pattern = “yyyy-MM-dd HH-mm-ss”)

4、@JsonSerialize

此注解用于属性或者getter方法上,用于在序列化时嵌入我们自定义的代码,比如序列化一个double时在其后面限制两位小数点。

5、@JsonDeserialize

此注解用于属性或者setter方法上,用于在反序列化时可以嵌入我们自定义的代码,类似于上面的@JsonSerialize

6、@Transient

@[email protected]�射,ORM框架将忽略该属性; 
如果一个属性并非数据库表的字段映射,就务必将其标示为@Transient,否则ORM框架默认其注解为@Basic;

//表示该字段在数据库表中没有

@Transient 
public int getAge() { 
 return 1+1; 
}

参考:http://www.bubuko.com/infodetail-264724.html

版权声明:本文为博主编写文章,未经博主允许转载,转载请注明出处。
阅读全文
'); })();
0 0
原创粉丝点击
热门IT博客
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 春夏秋冬四字词语大全 春夏秋冬分别是哪几个月 春夏秋冬生肖 春夏秋冬四字词语 春夏秋冬歌词 春夏秋冬词语大全 春夏秋冬的词语 春夏秋冬四字成语 春夏秋冬月份 2020春夏时装周时间 春夏秋冬成语大全 春夏秋冬简笔画 儿歌四季春夏秋冬歌 春夏秋冬生肖表 春夏秋冬四季古诗各10首 春夏秋冬都想吃冰淇淋 一张春夏秋冬四季图 春夏秋冬成语各四个 春夏秋冬作文 钓鱼口诀大全春夏秋冬 米兰时装周2019春夏图片 贵媳临门韩三千苏迎春夏 米兰时装周2020春夏款 春天诗句 春天词语 春天的故事 春天故事 春天 春天的诗句 春天诗 春天花 春天里 春天句子 李春天的春天 春天的词语 春天景色 春天的诗 春天哪里 木棉花春天 春天图片 爱在春天