关于当前的CodeBook
我有问题。CodeBook
是由两个属性(Code
和Description
)组成的实体。
这是一个抽象类。我用类Domain
扩展了该类。
域类也是一个抽象类,包含enum DomainType
,它具有以下值:
例如NATIONALITY
,NATIVE_LANGUAGE
,DISEAS
..等等
现在,我必须制作“文档”实体,稍后将在其中填充数据。
因此,例如,客户必须选择国籍。它将从已在密码本DomainNationality
(扩展域)中为domainType.NATIONALITY
输入的值的列表中选择一个,但是如果我的CodeBook
中没有国籍怎么办?我将输入一个选项OTHER
,他可以选择该选项,但是我还需要在该字段中输入他的OTHER
国籍。
我如何保留其他国籍的记录?
现在,我的文档实体具有与DomainNationality.DomainSex
,DomainNativeLanguage
等的关联链接。文档中每个域旁边的String字段是最好和最简单的解决方案吗?我不想让客户在CodeBook
中输入新内容。
谢谢!
最佳答案
这主要是您的设计决策。您可以采用任何一种设计对象职责的方式来进行操作。但是,这是我的想法:由于您说的是客户的国籍可能不在您所提供的国籍之内,而是想为他/她提供一个输入自定义国籍的字段,因此您应该将国籍作为字符串存储在对象中(没有枚举)。之后,您始终可以检查客户的国籍是否在预定义的国籍中。