关于当前的CodeBook我有问题。

CodeBook是由两个属性(CodeDescription)组成的实体。
这是一个抽象类。我用类Domain扩展了该类。
域类也是一个抽象类,包含enum DomainType,它具有以下值:
例如NATIONALITYNATIVE_LANGUAGEDISEAS ..等等

现在,我必须制作“文档”实体,稍后将在其中填充数据。

因此,例如,客户必须选择国籍。它将从已在密码本DomainNationality(扩展域)中为domainType.NATIONALITY输入的值的列表中选择一个,但是如果我的CodeBook中没有国籍怎么办?我将输入一个选项OTHER,他可以选择该选项,但是我还需要在该字段中输入他的OTHER国籍。

我如何保留其他国籍的记录?
现在,我的文档实体具有与DomainNationality.DomainSexDomainNativeLanguage等的关联链接。文档中每个域旁边的String字段是最好和最简单的解决方案吗?我不想让客户在CodeBook中输入新内容。

谢谢!

最佳答案

这主要是您的设计决策。您可以采用任何一种设计对象职责的方式来进行操作。但是,这是我的想法:由于您说的是客户的国籍可能不在您所提供的国籍之内,而是想为他/她提供一个输入自定义国籍的字段,因此您应该将国籍作为字符串存储在对象中(没有枚举)。之后,您始终可以检查客户的国籍是否在预定义的国籍中。

10-07 22:46