一種數(shù)據(jù)字典表的創(chuàng)建方式

一種數(shù)據(jù)字典表的創(chuàng)建方式

注意創(chuàng)建表的規(guī)范

CREATE TABLE IF NOT EXISTS `sys_dict`(
    `id` INT(10) NOT NULL AUTO_INCREMENT COMMENT '主鍵id',
    `dict_type` VARCHAR(50) NOT NULL DEFAULT '' COMMENT '字典類型',
    `dict_key` VARCHAR(50) NOT NULL DEFAULT '' COMMENT '字典key',
    `dict_value` VARCHAR(50) NOT NULL DEFAULT '' COMMENT '字典value',
    `sort` INT(10) NOT NULL DEFAULT '0' COMMENT '字典排序值',
    `add_uid` INT(10) NOT NULL DEFAULT '0' COMMENT '添加人',
    `update_uid` INT(10) NOT NULL DEFAULT '0' COMMENT '更新人',
    `add_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '創(chuàng)建時(shí)間',
    `update_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '更新時(shí)間',
    `del_flag` TINYINT(4) NOT NULL DEFAULT '0' COMMENT '刪除標(biāo)記',
    `remark` VARCHAR(100) NOT NULL DEFAULT '' COMMENT '備注',
    PRIMARY KEY (`id`),
    UNIQUE KEY `uniq_dict_type`(`dict_type`),
    -- 建表的時(shí)候建立合適的索引
    KEY `idx_dict_key` (`dict_key`)
)ENGINE=INNODB DEFAULT CHARSET=utf8 COMMENT='數(shù)據(jù)字典表';

數(shù)據(jù)字典工具類

public class DictUtils {

    private static SysDictMapper sysDictMapper = SpringContextUtils.getBeanByClass(SysDictMapper.class);

    public static SysDictPo getDict(String dictType, String dictKey) {
        SysDictPo sysDictPo = new SysDictPo();
        sysDictPo.setDictType(dictType);
        sysDictPo.setDictKey(dictKey);
        return sysDictMapper.selectByTypeAndKey(sysDictPo);
    }

    public static String getDictValue(String dictType, String dictKey) {
        SysDictPo query = getDict(dictType, dictKey);
        if (query != null) {
            return query.getDictValue();
        }
        return null;
    }
}

數(shù)據(jù)字典的一個(gè)妙用是做一個(gè)開關(guān)

aelftksuqmcc.png

String value = DictUtils.getDictValue("switch",0);
Boolean switch = Boolean.valueOf(value);

if(switch){
  //......   
}else{
  //.....
}

而dict_value我們可以通過接口修改,這樣只需要修改數(shù)據(jù)庫的值而不需改動(dòng)代碼
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容