我正在建立一个小型金融系统。由于复式记帐,事务总是分两批或更多,所以我有一个batch
表和一个transaction
表。 (交易表包含batch_id
,account_id
和amount
字段,date
和description
等共享数据已降级为batch
表)。
到目前为止,我一直在为每张桌子使用基本的vo型模型。但是,由于此表结构,几乎总是通过batch
表上的连接选择事务。
那么我应该选择所选记录并将它们拼接成两个单独的vo对象,还是应该创建一个包含批处理和事务数据的“共享”文件?
在某些情况下,batch
个记录和/或transaction
记录会单独加载,因此每个记录都会有相关的vo类。如果我有像这样“重叠”的vo类,是否有可能陷入困境?
答案 0 :(得分:1)
最好的方法是将模型与数据库表绑定,而不是与您的视图绑定。例如。如果视图有日期字段,那么使用“共享”视图对象(理想情况下甚至是特定于视图对象),如果视图只有事务信息,则使用其他对象等。这可能很乏味,但关注点分离将是值得的。在适当的时候重复使用/继承可以弥补过多的重复。