服务和DAO方法参数

时间:2012-03-06 16:07:12

标签: java design-patterns dao

我有一个DAO接口来获取数据库的对象:

List<MyObject> find(String id)

在我的服务中,我需要使用来自配置和/或其他DAO的其他字段来扩展此对象。

List<MyObjectEx> find(String id)

MyObject和MyObjectEx如何与另一个相关。派生,聚合,字段映射,其他? (我也可以想象让DAO返回部分MyObjectEx实例)

谢谢!

1 个答案:

答案 0 :(得分:0)

  1. 它可能不是派生,因为MyObjectEx不是一种类型 为MyObject。相反,它是包含的不同类型的对象 MyObject中存在的属性。但是如果可以使用MyObjectEx 在需要MyObject的地方,我们可以将它们保持在同一个地方 层次结构。
  2. 您可以使用适配器模式,但我认为它不合适     因为这不是真正意义上的对象转换。
  3. 另外,我们可以考虑聚合,然后考虑MyObjectEx和     MyObject将无法互相替换,即它的好处     点#1将会丢失。