Spring 通过注解方式修改返回值
1.创建类T继承JsonSerializer方法
T:类名
B:数据类型(如String ,int 等)
public class T extends JsonSerializer<B> {
@Override
public void serialize(B arg0, JsonGenerator arg1, SerializerProvider arg2) throws IOException {
if(arg0 != null) {
此处写处理流程
最后通过 writeString方法返回对象
arg1.writeString(返回前端的对象);
}
}
}
例:将String类型保留2位小数并展示
public class String2Serialize extends JsonSerializer<String> {
@Override
public void serialize(String arg0, JsonGenerator arg1, SerializerProvider arg2) throws IOException {
if(arg0 != null) {
DecimalFormat df = new DecimalFormat("0.00");
Double d= Double.parseDouble(arg0);
String s = df.format(d);
arg1.writeString(s);
}
}
}
2.实体类注解
@JsonSerialize(using = T.class)
private String a;
例:
@JsonSerialize(using = String2Serialize.class)
private String a;
这样就可以格式化返回值
通过不同的类型B以及不同的处理流程,返回值也就不同