jsonFiled与jsonproperty

@JSONField注解的使用
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.28</version>
</dependency>

成都创新互联公司是专业的禅城网站建设公司,禅城接单;提供网站建设、网站设计,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行禅城网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!

FastJson中的注解@JSONField,一般作用在get/set方法上面,常用的使用场景有下面三个:
修改和json字符串的字段映射【name】
格式化数据【format】
过滤掉不需要序列化的字段【serialize】
一、修改字段映射使用方法:

private Integer aid;
// 实体类序列化为json字符串的时候,此类的aid字段,序列化为json中的testid字段
@JSONField(name="testid")
public Integer getAid() {
return aid;
}

// json字符串解析为类实体的时候,json中的id字段,写入此类的aid字段  @JSONField(name="id")
br/>  @JSONField(name="id")
this.aid = aid;
}

二、格式化使用方法
@JSONField(format = "yyyy-MM-dd HH:mm:ss")
public Date getDateCompleted(...)

三、过滤不需要序列化的字段
@JSONField(serialize = false)
public Integer getProgress() {
return progress;
}

@JsonProperty的使用
jackson的maven依赖

<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.5.3</version>
</dependency>

两个类库都有把属性名字映射成另一个名字的作用。

jackson的@JsonIgnore使用

作用:在json序列化时将java bean中的一些属性忽略掉,序列化和反序列化都受影响。

使用方法:一般标记在属性或者方法上,返回的json数据即不包含该属性。
例如希望返回的json数据中不包含这两个快照字段,那么在实体类中快照属性上加注解@JsonIgnore,那么最后返回的json数据,将不会包含goodsInfo和extendsInfo两个属性值。

public class HistoryOrderBean {

//基本属性字段
private String insurantName;
private String insuranceName;
private String insurancePrice;
private String insurancePicture;
private String insuranceLimit;

//快照属性字段
@JsonIgnore
private String goodsInfo;      //快照基本信息
@JsonIgnore  
private String extendsInfo;    //快照扩展属性信息

}

网站标题:jsonFiled与jsonproperty
网页URL:https://www.cdcxhl.com/article40/ijhseo.html

成都网站建设公司_创新互联,为您提供用户体验软件开发品牌网站建设网站建设商城网站关键词优化

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

成都网站建设公司