但行好事
莫论前程❤

Spring3.2升级5.0后Enum枚举类改写

public static String getEnumString(EnumType[] range){
    String str = "";
    for(int i=0; i < range.length;i++){
        if(range[i] == null){
            continue;
        }
        String label = range[i].getLabel();
        str = str + (i == range.length -1 ? label:label + "、");
    }
    return str;
}
  • EnumType
public class EnumType extends ShortCodedLabeledEnum{
    public EnumType(int code,String label){
        super(code,label);
    }

    public Short getShort(){
        return (Short)getCode();
    }
}

由于spring3.2升级到Spring5之后,ShortCodedLabeledEnum被启用

import java.lang.reflect.Method;
//改进后的代码为
public static String getEnumString(Enum[] range){
    String str = "";
    for(int i=0; i < range.length;i++){
        if(range[i] == null){
            continue;
        }
        try{
            Method method = range[i].getClass().getMethod("getLabel");
            String label = return (String) method.invoke(range[i]);
            str = str + (i == range.length -1 ? label:label + "、");
        }catch (NoSuchMethodException | SecurityException | IllegalAccessException | IllegalArgumentException | InvocationTargetException e1) {
            e1.printStackTrace();
        }
    }
    return str;
}
赞(0) 打赏
未经允许不得转载:刘鹏博客 » Spring3.2升级5.0后Enum枚举类改写
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

 

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏