Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Design patterns 设计可延迟加载的聚合模型的最佳方法_Design Patterns - Fatal编程技术网

Design patterns 设计可延迟加载的聚合模型的最佳方法

Design patterns 设计可延迟加载的聚合模型的最佳方法,design-patterns,Design Patterns,我必须为一个模型构建一个简单的查看器页面,让我们假设Person,其中我向用户提供一组标准供选择(基于持久化模型的状态),例如,我有一个部门下拉列表,显示所有不同的部门,其中人员记录可用,并且一旦选择了部门,我希望在选择所有标准值并按下“显示”按钮时,向用户提供该组可用的所有不同名称(如经理、主管等)的列表,而我实际希望显示数据。我使用的是GWT,所以我在客户端用一个视图类实现了一个mvc,并由一个模型类支持。本例中的模型类是Person类的简单聚合类,它应该包含Person类的集合。 假设Pe

我必须为一个模型构建一个简单的查看器页面,让我们假设Person,其中我向用户提供一组标准供选择(基于持久化模型的状态),例如,我有一个部门下拉列表,显示所有不同的部门,其中人员记录可用,并且一旦选择了部门,我希望在选择所有标准值并按下“显示”按钮时,向用户提供该组可用的所有不同名称(如经理、主管等)的列表,而我实际希望显示数据。我使用的是GWT,所以我在客户端用一个视图类实现了一个mvc,并由一个模型类支持。本例中的模型类是Person类的简单聚合类,它应该包含Person类的集合。 假设Person类很重(它包含一个CLOB字段)因此,这个聚合模型必须分阶段加载,比如首先,我想向用户显示所有可用的标准值,最后,根据他选择的一组标准,作为关键,我实际上想去服务器获取数据并最终显示。 我的典型方法是,在我的模型中,必须有一个集合来表示要呈现给用户的各个标准字段,如部门、名称,最后是完全初始化的人员模型集的另一个集合,但问题是,请查看该数据(标准数据)在多个位置重复,即聚合类中的内部人员类模型和条件集合字段。 是否有既定的最佳实践/设计模式来解决此类问题??或者,什么才是这个问题的正确解决方案


非常感谢您的期待。

您描述为标准的数据本身可以作为数据库实体存在。这将是一个奇怪的系统,在这个系统中,并没有附加到部门的额外信息,类似的情况也可能发生在工作(指定)上。但您仍然可以创建这些表,只要为数据完整性约束提供外键即可


使用这种方法,您可以填充各种轻量级表中的“条件”下拉列表,并且只有在用户选择其过滤器并发出“选择”命令后,才可以触摸Person

感谢您的回答,这是一个示例场景,但在实际场景中,条件字段本身不是表,而是Person表中的字段,那么您将如何处理该问题??