org.codehaus.jackson.annotate.JsonValue
,該jar包已經(jīng)廢棄維護(hù)颠黎,請(qǐng)使用fasterxml的jar包com.fasterxml.jackson.annotation.JsonValue
image.png
假設(shè)我們現(xiàn)在有如下枚舉類(lèi):
public enum Sex {
FEMALE("0", "女"), MALE("1", "男");
private String value;
private String description;
public String getValue() {
return value;
}
public void setValue(String value) {
this.value = value;
}
public String getDescription() {
return description;
}
public void setDescription(String description) {
this.description = description;
}
}
在SpringMVC中如果直接返回枚舉類(lèi)
@RequestMapping("sex")
@ResponseBody
public Sex aboutUs3(){
return Sex.MALE;
}
他會(huì)返回枚舉對(duì)象的對(duì)象名稱(chēng)脆霎,比如Sex.MALE
总处,就會(huì)返回"MALE"
,如果想返回枚舉對(duì)象中的某個(gè)屬性睛蛛,則可以使用@JsonValue
注解鹦马。該注解只能用在方法上,所以我們想返回枚舉對(duì)象的哪個(gè)屬性忆肾,就在對(duì)應(yīng)屬性的getter方法上加上該注解即可荸频。
@JsonValue
public int getValue() {
return value;
}
此時(shí),該枚舉類(lèi)作為另一個(gè)實(shí)體類(lèi)的屬性返回客冈,jackson也會(huì)自動(dòng)返回標(biāo)注了@JsonValue
注解的屬性值旭从。