登峰造极境

  • WIN
    • CSharp
    • JAVA
    • OAM
    • DirectX
    • Emgucv
  • UNIX
    • FFmpeg
    • QT
    • Python
    • Opencv
    • Openwrt
    • Twisted
    • Design Patterns
    • Mysql
    • Mycat
    • MariaDB
    • Make
    • OAM
    • Supervisor
    • Nginx
    • KVM
    • Docker
    • OpenStack
  • WEB
    • ASP
    • Node.js
    • PHP
    • Directadmin
    • Openssl
    • Regex
  • APP
    • Android
  • AI
    • Algorithm
    • Deep Learning
    • Machine Learning
  • IOT
    • Device
    • MSP430
  • DIY
    • Algorithm
    • Design Patterns
    • MATH
    • X98 AIR 3G
    • Tucao
    • fun
  • LIFE
    • 美食
    • 关于我
  • LINKS
  • ME
Claves
长风破浪会有时,直挂云帆济沧海
  1. 首页
  2. Platforms
  3. WINDOWS
  4. JAVA
  5. 正文

数据字典与枚举型思考

2019-03-12

这两个表都可以描述“状态”常量,比如星期这个字段可能有星期一、星期二...星期N,那数据字典和枚举应该如何挑选呢?哪些“状态”描述应该使用数据字典,哪些状态描述应该选择枚举?

经过这么多年,多个项目中的体验,得出了自己的一个理解:

  • 如果“状态”和业务完全无关,仅仅描述用例的一种状态,且后期会改变。比如说性别为男、女,系统内只是标注一下,不会因为性别为男,就会产生其他的业务,这种就适合用数据字典保存,持久化在数据库中;
  • 如果“状态”和业务有关,比如订单的状态为计划、审批、下发,但是每种状态的业务逻辑不一样,且后期可能会新增加入其它的状态,那这种就适合枚举类型存储;
  • 枚举类型和代码相关,枚举状态版本和代码版本一一对应,不会应该数据库内容改变就改变,非常适合某些耦合性较强的业务;

如果基础数据字典分布式系统会共用,那该如何使用呢?

思路如下:

  • 数据字典微服务(各应用内缓存)
  • 统一配置中心

标签: 暂无
最后更新:2020-10-28

代号山岳

知之为知之 不知为不知

点赞
< 上一篇
下一篇 >

COPYRIGHT © 2099 登峰造极境. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang

蜀ICP备14031139号-5

川公网安备51012202000587号