Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/323.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 服务和DAO方法参数_Java_Design Patterns_Dao - Fatal编程技术网

Java 服务和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不是 我的对象。相反,它是一种不同类型的对象

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

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实现的缓存中。