例如,我有一个表名Fruit,每个水果都属于一个FruitType。所以我应该将FruitType存储在数据库中,然后在Fruit中创建外键,或者只将引用id存储到EnumnameFruitType
更新:
数据库仅用于一个应用程序。我需要向用户显示一个包含他们的fruit的表。我还使用type作为水果表视图中的过滤器。
我目前的解决方案:
对于fruit type,我总是有一个Enum。但是
如果Type有比Typeid更多的信息,即name。我还将它存储在数据库中,这样我就可以有一个引用视图来显示所有description信息。另一方面。

最佳答案

您必须使用数据库来保存FruitType。我将解释两种方法来实现'fruittype'的enum。我以为你在用javax.persistance

enum FruitType {
 YELLOW,GREEN,RED;
}

class Fruit{
 private String name;
 @Enumerated(EnumType.ORDINAL) or @Enumerated(EnumType.STRING)
 private FruitType fruitType;
}

如果使用enumtype.string,则保存枚举like的字符串名称(黄色、红色)。对于enumtype.ordinal,保存1、2等顺序。
如果你打算处理(添加、更新和删除)很多水果类型,那么使用另一个表来保存数据。

09-07 08:50