2016-08-17 151 views
0

我有一个数据库中需要为用户生成并通过电子邮件发送的报告类型(对象)列表/打印/保存在硬盘等。查询数据库以查看对象列表,以便从该列表创建对象:正确的方法

一个报告('skeleton')是数据库中的一行。

我的问题是:我应该为一行查询结果创建一个单独的对象 - “骨架”报告对象,然后使用此对象来创建结束“报告”对象。这是处理这种任务的正确方法吗?

我被告知创建一个方法并从数据库中获取行集比较容易。然后解析创建报告所需的参数所需的行集,创建结束报告对象等。

回答

1

我不完全确定我是否正确理解您的问题,但我认为您想知道是否应该填写一个包含来自数据库的数据的对象,并在创建报告时解析对象,或者只是将结果集传递给创建方法?

我会推荐使用一个对象'Skeleton'并填充这个,因为您可以稍后重用它,并且它使得我认为代码方式更具可读性。

有关此软件的更多信息: 在许多应用程序中,MVC模式用于构建您的程序。在这种模式下,你的程序分为三层,第一层为你的UI(VIEW),第二层为你的buisness logic(Controller),第三层为你的持久性数据(Model)。这些图层只通过表示数据的域模型对象进行通信(在您的情况下,这将是'骨架'对象,也称为POJO)。如果您突然想要从数据库更改为文本文件或任何其他持久性策略,这一点尤其有用,因为您只需更改模型层,同时保持其他图层大多相同(特别是在使用接口时)。你可以在互联网上找到很多这种模式,对于大多数标准应用程序,我肯定会推荐它

+0

感谢您的回答,您理解正确。我正在计划使用工厂模式生成不同类型的报告,并使用库模式处理填充报告对象所需的数据集合。 –

+1

ahh ok,在这种情况下,你应该仍然使用一个特殊的'Skeleton'对象,因为它只是更可读的方式,可能更容易在你的工厂中使用 – LuckAss

+0

现在的问题应该是骨架对象可以作为主对象重用,还是应该仅用于收集主要对象的数据。 :)抱歉,如果它是以复杂的方式陈述。 –