之前公司需要修改sonarQube平台上的代码规范问题,其中,有一种修改错误是枚举类里的字段没有符合驼峰风格,可问题是这些枚举的字段名是需要序列化成json格式返回给前端的,name问题就来了。如何只在后端修改其枚举名,而不影响实际序列化的结果。
方案一:
给枚举常量添加一个构造方法,将原字段作为一个参数保存起来,然后在应用内部调用这个枚举名的时候,将其返回结果通过一个getValue的方式返回原字段。
但是这种情况下,实际在序列化的时候,是默认序列化枚举的name属性。
方案二:
在方案一的基础上,继承jackSon的抽象类,JsonSerializer<T>
通过这种方式,然后在javabean的getValue方法上添加注解@JsonSerialize即可实现局部注解。
至此,枚举常量修改name属性的命名,但是不影响序列化后返回给前端的结果完整解决了。