在我们的应用程序中,一些实体必须由枚举来表示是一个很常见的情况:例如类型,类别,状态和类似的东西.
通常,代码中有条件或流程使用值来决定一个动作或另一个动作,因此值必须以某种方式为应用程序“已知”(即它必须能够引用特定实例决定而不是整体地引用类).这就是为什么我们使用枚举而不是普通的类.
问题是这些实体还需要在数据库中存储(或至少被引用)作为其他实体的字段.我们通常为每个实体创建一个表,以便能够在这些列中进行参考完整性检查,并且数据库中只有数据具有“意义”,而不需要参考枚举来查找每个id的含义.
理想情况下,这些实体的数据应该从枚举中的数据中填充,但是现在我们在db初始化脚本中重复了这些值.
当使用像Hibernate这样的ORM时,它变得有点复杂.
我想知道其他人如何处理这种情况.
解决方法
尝试这个问题的答案:
Ways to save enums in database