Model view controller 从联接查询填充模型对象的最佳方法?
我正在建立一个小型金融系统。由于复式记账,交易总是以两个或两个以上的批次进行,因此我有一个Model view controller 从联接查询填充模型对象的最佳方法?,model-view-controller,model,Model View Controller,Model,我正在建立一个小型金融系统。由于复式记账,交易总是以两个或两个以上的批次进行,因此我有一个批次表和一个交易表。(交易表具有批次id、账户id和金额字段,并且日期和说明等共享数据被归入批次表) 到目前为止,我一直在为每个表使用基本的vo类型模型。但是,由于这种表结构,事务几乎总是通过批处理表上的联接进行选择 因此,我应该将所选记录拼接到两个单独的vo对象中,还是应该创建一个包含批处理和事务数据的“共享”vo 在一些情况下,批处理记录和/或事务记录是单独加载的,因此它们也都有其关联的vo类。如果我有
批次
表和一个交易
表。(交易表具有批次id
、账户id
和金额
字段,并且日期
和说明
等共享数据被归入批次
表)
到目前为止,我一直在为每个表使用基本的vo类型模型。但是,由于这种表结构,事务几乎总是通过批处理
表上的联接进行选择
因此,我应该将所选记录拼接到两个单独的vo对象中,还是应该创建一个包含批处理和事务数据的“共享”vo
在一些情况下,
批处理
记录和/或事务
记录是单独加载的,因此它们也都有其关联的vo类。如果我有这样的“重叠”vo类,是否会有可能出现陷阱?最好的方法不是将模型绑定到数据库表,而是绑定到视图。例如,如果视图有日期字段,则使用“共享”视图对象(理想情况下,甚至是特定于视图对象),如果视图只有事务信息,则使用另一个对象等。这可能会很繁琐,但分离关注点是值得的。在适当的情况下,可以通过重用/继承来纠正过多的重复。最好的方法不是将模型绑定到数据库表,而是绑定到视图。例如,如果视图有日期字段,则使用“共享”视图对象(理想情况下,甚至是特定于视图对象),如果视图只有事务信息,则使用另一个对象等。这可能会很繁琐,但分离关注点是值得的。如果需要,可以通过重用/继承来纠正过多的重复。您是指数据库意义上的“视图”,还是指MVC意义上的“视图”。例如表格、页面等。啊,明白了。我的头卡在了数据访问层。谢谢你是指数据库意义上的“视图”,还是指MVC意义上的“视图”。例如表格、页面等。啊,明白了。我的头卡在了数据访问层。谢谢