Java 服务和DAO方法参数
我有一个DAO接口来获取数据库的对象:Java 服务和DAO方法参数,java,design-patterns,dao,Java,Design Patterns,Dao,我有一个DAO接口来获取数据库的对象: List<MyObject> find(String id) 在我的服务中,我需要使用来自配置和/或其他DAO的附加字段来扩展这个对象 List<MyObjectEx> find(String id) MyObject和MyObjectEx应如何与另一个关联。派生、聚合、字段映射、其他?我还可以想象让DAO返回部分MyObjectEx实例 谢谢 它可能不是派生,因为MyObjectEx不是 我的对象。相反,它是一种不同类型的对象
List<MyObject> find(String id)
在我的服务中,我需要使用来自配置和/或其他DAO的附加字段来扩展这个对象
List<MyObjectEx> find(String id)
MyObject和MyObjectEx应如何与另一个关联。派生、聚合、字段映射、其他?我还可以想象让DAO返回部分MyObjectEx实例
谢谢
它可能不是派生,因为MyObjectEx不是
我的对象。相反,它是一种不同类型的对象,包含
MyObject中存在的属性。但是如果MyObjectEx可以用于
在需要MyObject的地方,我们可以将它们保持在相同的位置
等级制度
您可以使用适配器模式,但我认为它不合适
因为这并不是真正意义上的对象转换。
此外,我们可以考虑聚合,但MyObjectEx和
MyObject将无法相互替代,即
第1点将丢失。
如果可能的话,创作一篇作文。我会建议不要在另一张桌子里放一个VO,一个VO可以让生活保持清醒。我的对象会怎么样?它会在某处使用吗?可能在您的服务中,impl可以做到这一点。一旦收到DAO对MyObject的响应,请在同一个service impl函数中配置其他字段或其他DAO。@DerMike MyObject不会在服务接口中公开,但它可能仍存在于DAO实现的缓存中。