diff --git a/nxhs-common/src/main/java/cc/yunxi/common/config/JsonConfig.java b/nxhs-common/src/main/java/cc/yunxi/common/config/JsonConfig.java index b61a7f1..a0b73ca 100644 --- a/nxhs-common/src/main/java/cc/yunxi/common/config/JsonConfig.java +++ b/nxhs-common/src/main/java/cc/yunxi/common/config/JsonConfig.java @@ -4,6 +4,7 @@ import cc.yunxi.common.domain.convert.EnumDeserializer; import cc.yunxi.common.domain.convert.EnumSerializer; import cc.yunxi.common.domain.convert.LocalDateTimeDeserializer; import cc.yunxi.common.domain.convert.LocalDateTimeSerializer; +import cc.yunxi.common.enums.BaseEnum; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import lombok.extern.slf4j.Slf4j; @@ -35,8 +36,8 @@ public class JsonConfig { jacksonObjectMapperBuilder.serializerByType(LocalDateTime.class, LocalDateTimeSerializer.INSTANCE); jacksonObjectMapperBuilder.deserializerByType(LocalDateTime.class, LocalDateTimeDeserializer.INSTANCE); // String <-> Enum - jacksonObjectMapperBuilder.serializerByType(Enum.class, EnumSerializer.INSTANCE); - jacksonObjectMapperBuilder.deserializerByType(Enum.class, EnumDeserializer.INSTANCE); + jacksonObjectMapperBuilder.serializerByType(BaseEnum.class, EnumSerializer.INSTANCE); + jacksonObjectMapperBuilder.deserializerByType(BaseEnum.class, EnumDeserializer.INSTANCE); }; } } \ No newline at end of file diff --git a/nxhs-common/src/main/java/cc/yunxi/common/domain/convert/EnumSerializer.java b/nxhs-common/src/main/java/cc/yunxi/common/domain/convert/EnumSerializer.java index 231ea36..95b968e 100644 --- a/nxhs-common/src/main/java/cc/yunxi/common/domain/convert/EnumSerializer.java +++ b/nxhs-common/src/main/java/cc/yunxi/common/domain/convert/EnumSerializer.java @@ -25,15 +25,6 @@ public class EnumSerializer extends JsonSerializer { @Override public void serialize(BaseEnum baseEnum, JsonGenerator jsonGenerator, SerializerProvider serializerProvider) throws IOException { jsonGenerator.writeStartObject(); - // java 如何获取枚举类的成员属性? 此处有问题, todo -// Field[] fields = baseEnum.getClass().getFields(); -// for (Field field : fields) { -// try { -// jsonGenerator.writeStringField(field.getName(), String.valueOf(field.get(baseEnum))); -// } catch (IllegalAccessException e) { -// throw new RuntimeException(e); -// } -// } jsonGenerator.writeStringField("code", baseEnum.getCode()); jsonGenerator.writeStringField("desc", baseEnum.getDesc()); jsonGenerator.writeEndObject();