EnumSerializer.java 1.0 KB

1234567891011121314151617181920212223242526272829303132
  1. package com.app.constant;
  2. import com.app.service.guardian.dto.WxmpLoginDto;
  3. import com.fasterxml.jackson.core.JsonGenerator;
  4. import com.fasterxml.jackson.databind.JsonSerializer;
  5. import com.fasterxml.jackson.databind.SerializerProvider;
  6. import org.springframework.http.HttpStatus;
  7. import java.io.IOException;
  8. /**
  9. * 功能描述:重写JSON序列化
  10. *
  11. * @Auther: 梁展鹏
  12. * @Date: 2018/8/2 10:21
  13. */
  14. public class EnumSerializer extends JsonSerializer {
  15. @Override
  16. public void serialize(Object object, JsonGenerator jsonGenerator, SerializerProvider serializerProvider) throws IOException {
  17. if (object instanceof HttpStatus) {
  18. HttpStatus httpStatus = (HttpStatus) object;
  19. jsonGenerator.writeNumber(httpStatus.value());
  20. } else if (object instanceof WxmpLoginDto.StateEnum) {
  21. WxmpLoginDto.StateEnum stateEnum = (WxmpLoginDto.StateEnum) object;
  22. jsonGenerator.writeNumber(stateEnum.getValue());
  23. } else {
  24. jsonGenerator.writeString(object.toString());
  25. }
  26. }
  27. }