枚举与字典表的选择

package com.raise.vo.enums;
/**
 * @description: 审批提现状态枚举

 * @author: jialiuyang
 * @update: 2015-8
 * @version: 1.0
 */
public enum AppCashType  {
    NO((short)0, "未审批"),
    /**可提现*/
    YES((short)1, "终审通过"), 
    /**提现中*/
    IN((short)2, "已拒绝"),
    /**提现中*/
    FIRST((short)3, "初审通过");
    /** code */
    private Short code;
    /** 显示标签 */
    private String label;
    /**
     * 构造器,必须私有
     * @param code
     */
    AppCashType(Short code, String label){
        this.code = code;
        this.label = label;
    }
    /**
     * 获取code的文本
     * @param code
     * @return
     */
    public static String getLabelByCode (Short code){
        for (AppCashType enuma : AppCashType.values()){
            if (enuma.getCode().compareTo(code) == 0){
                return enuma.getLabel();
            }
        }
        return "未知枚举项";
    }
    /**
     * 根据文本获取code
     */
    public static Short getCodeByLabel(String label){
        for(AppCashType enuma : AppCashType.values()){
            if(enuma.getLabel().equals(label)){
                return enuma.getCode();
            }
        }
        return null;       
    }
    public String toString(){
        return label;
    }
    public String getLabel() {
        return label;
    }
    public Short getShort(){
        return this.code;
    }
    public Short getCode(){
        return this.code;
    }  
}


字典表


drop table datadic_groups;
create table datadic_groups(
    group_code varchar2(
20
) primary key,
    group_name varchar2(
50

);
drop table datadic_items;
create table datadic_items(
    dataitem_code varchar2(
20
) primary key,
    dataitem_name varchar2(
50
),
    group_code varchar2(
20
)
);
foreign key (group_code)


  //查询数据库,根据组名称查询组编号,根据组编号获取该组内数据字典项信息

           String strSql = "select items.dataitem_code, items.dataitem_name, items.group_code, dgroups.group_name from datadic_items items, datadic_groups dgroups where items.group_code = dgroups.group_code and dgroups.group_name='"+gName+"'";




枚举适合简单、固定字段。字典表适合大型、需维护字段


你可能感兴趣的:(后台服务端)