美文网首页
一种数据字典表的创建方式

一种数据字典表的创建方式

作者: 最终幻想_5b57 | 来源:发表于2019-02-18 11:25 被阅读0次

    一种数据字典表的创建方式

    注意创建表的规范

    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 '创建时间',
        `update_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '更新时间',
        `del_flag` TINYINT(4) NOT NULL DEFAULT '0' COMMENT '删除标记',
        `remark` VARCHAR(100) NOT NULL DEFAULT '' COMMENT '备注',
        PRIMARY KEY (`id`),
        UNIQUE KEY `uniq_dict_type`(`dict_type`),
        -- 建表的时候建立合适的索引
        KEY `idx_dict_key` (`dict_key`)
    )ENGINE=INNODB DEFAULT CHARSET=utf8 COMMENT='数据字典表';
    

    数据字典工具类

    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;
        }
    }
    

    数据字典的一个妙用是做一个开关

    aelftksuqmcc.png
    String value = DictUtils.getDictValue("switch",0);
    Boolean switch = Boolean.valueOf(value);
    
    if(switch){
      //......   
    }else{
      //.....
    }
    
    而dict_value我们可以通过接口修改,这样只需要修改数据库的值而不需改动代码
    

    相关文章

      网友评论

          本文标题:一种数据字典表的创建方式

          本文链接:https://www.haomeiwen.com/subject/voxaeqtx.html