v1.3.0 优化过期枚举功能的设计
背景
老版本中Dict.getAll(Class)
方法获取枚举所有元素时,每个元素中都会包含code
、text
、isDeprecated
(是否废弃)三个属性,但是大部分情况下枚举中的isDeprecated
的值是false,这样在前后端数据交互时会造成不必要的性能浪费。
改变
所以优化了这部分设计,增加了一个重载方法:Dict.getAll(Class, boolean)
,第二个参数表示是否排除过期元素,默认是false,所以当前端只需要未过期的枚举元素时,传true即可:
enum SexEnum implements Dict<Integer>{
MALE(1, "男"),
FEMALE(2, "女"),
@Deprecated
UNKNOWN(3, "未知");
...
}
// 排除过期元素
Dict.getAll(SexEnum.Class, true); // [{code:1,text:"男"},{code:2,text:"女"}]
// 所有元素(不排除过期元素)
Dict.getAll(SexEnum.Class) // [{code:1,text:"男"},{code:2,text:"女"},{code:3,text:"未知"}]