实体类转换为json时,有时需要保持首字母大写或整个字段大写,而jackson序列化是默认使得首字母小写。
一种实现的方法是使用jackson的注解;
引入注解时注意版本:
-
1.x annotations are in Java packageorg.codehaus.jackson.annotate, in Jackson core jar
-
2.x annotations are in Java packagecom.fasterxml.jackson.annotation, in "jackson-databind" jar.
在实体类属性字段上添加:@JsonProperty({要转化为json时显示的字段名称})
例如:
// ID 图书编号
@JsonProperty("ID")
private String id;
// ISBN
@JsonProperty("ISBN")
private String ISBN;
// ISSN
@JsonProperty("ISSN")
private String ISSN;
// 营销书名
@JsonProperty("BookName")
private String BookName;
仅仅这样会发生转换后的json串中,会有类似{“bookName”:"","BookName":""}的情况,为此还需要在起 get方法上添加 @JsonIgnore
或者在实体类上添加 @JsonAutoDetect(JsonMethod.FIELD) ,全部忽略
-
-
若实体类某字段为null或“”时,要求该字段不参与json序列化,需要在实体类添加注解 @JsonSerialize(include=Inclusion.NON_EMPTY)
-
-
更多注解含义 见: http://wiki.fasterxml.com/JacksonAnnotations