zoukankan      html  css  js  c++  java
  • FastJson序列化枚举类

    场景说明

    比如我们想打印返回参数的具体情况,如果里面有枚举类型,打印的参数不完整。

    @Getter
    @Setter
    @ToString
    public class ResultResponse {
    
        private String name;
    
        private Integer age;
    
        private ResultEnum resultEnum;
    
    }
    
    public enum ResultEnum {
    
        SUCCESS("0000", "成功"),
        FAIL("0001", "失败"),
        EXIST("0002", "已存在"),
        SYS_ERROR("9999", "系统异常");
        private String code;
        private String msg;
    
        ResultEnum(String code, String msg) {
            this.code = code;
            this.msg = msg;
        }
    
        public String getCode() {
            return code;
        }
    
        public void setCode(String code) {
            this.code = code;
        }
    
        public String getMsg() {
            return msg;
        }
    
        public void setMsg(String msg) {
            this.msg = msg;
        }
    
    }
    

    默认序列化方式

    public class MainTest {
    
        public static void main(String[] args) {
            ResultResponse resultResponse = new ResultResponse();
            resultResponse.setAge(11);
            resultResponse.setName("张三");
            resultResponse.setResultEnum(ResultEnum.SUCCESS);
            System.out.println(JSONObject.toJSONString(resultResponse));
        }
    
    }
    

    运行结果:{"age":11,"name":"张三","resultEnum":"SUCCESS"},并不是我想要的结果,枚举类型属性没打印出来

    设置枚举序列化

    public class MainTest {
    
        public static void main(String[] args) {
            ResultResponse resultResponse = new ResultResponse();
            resultResponse.setAge(11);
            resultResponse.setName("张三");
            resultResponse.setResultEnum(ResultEnum.SUCCESS);
    
            SerializeConfig config = new SerializeConfig();
            config.configEnumAsJavaBean(ResultEnum.class);
    
            System.out.println(JSONObject.toJSONString(resultResponse, config));
        }
    
    }
    

    运行结果:{"age":11,"name":"张三","resultEnum":{"code":"0000","msg":"成功"}}

  • 相关阅读:
    将表单赋予对对象
    sql server 锁
    设置SQL server服务器的dbo架构
    用ILSpy查看Session.SessionID的生成算法
    c#3.0新特性
    解决文件上传插件Uploadify在火狐浏览器下,Session丢失的问题
    VS2012 集成 IL DASM IL微软中间语言查看器
    认识
    操作符重载
    博客搬家了
  • 原文地址:https://www.cnblogs.com/zhangjianbing/p/15517925.html
Copyright © 2011-2022 走看看