在springboot中返回的枚举类型,我不想显示这个枚举的名称,而是希望能显示枚举的具体属性
时间: 2024-02-17 15:02:14 浏览: 130
在Spring Boot中,可以通过自定义一个Jackson的序列化器来实现将枚举类型的具体属性返回给前端。
首先,在枚举类型中定义一个方法,用来获取需要返回给前端的具体属性:
```
public enum MyEnum {
VALUE1("具体属性1"),
VALUE2("具体属性2");
private String property;
MyEnum(String property) {
this.property = property;
}
public String getProperty() {
return property;
}
}
```
然后,定义一个Jackson的序列化器,将枚举类型序列化成具体属性:
```
@Component
public class MyEnumSerializer extends JsonSerializer<MyEnum> {
@Override
public void serialize(MyEnum value, JsonGenerator gen, SerializerProvider serializers) throws IOException {
gen.writeString(value.getProperty());
}
}
```
最后,在枚举类型上使用@JsonSerialize注解指定使用这个自定义的序列化器:
```
@JsonSerialize(using = MyEnumSerializer.class)
public enum MyEnum {
// ...
}
```
这样,在返回给前端时,就会将枚举类型的具体属性返回给前端。
阅读全文