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
Jakarta ee 要使用什么设计模式来保存具有类似保存方式的对象?_Jakarta Ee_Design Patterns_Ejb - Fatal编程技术网

Jakarta ee 要使用什么设计模式来保存具有类似保存方式的对象?

Jakarta ee 要使用什么设计模式来保存具有类似保存方式的对象?,jakarta-ee,design-patterns,ejb,Jakarta Ee,Design Patterns,Ejb,我之所以产生这种怀疑,是因为如果我没有弄错的话,我已经读过,看过,甚至实现过类似的东西,但我不记得了,如下所示: 这里我有一个包含各种实体的EJB项目,其中一些实体有非常相似的保存方式,例如实体“Contract”和“AuxiliaoFinanceiro”,这两个(和其他)将实现“Competency”列表并保存其他基本属性。关键是,我不必使用相同的方法实现多个服务和多个dao来保存在这里或那里更改的小东西,我认为这些东西可能有一些类似于从任何实体获取对象的通用dao或服务,而实体负责保存 我们

我之所以产生这种怀疑,是因为如果我没有弄错的话,我已经读过,看过,甚至实现过类似的东西,但我不记得了,如下所示:

这里我有一个包含各种实体的EJB项目,其中一些实体有非常相似的保存方式,例如实体“Contract”和“AuxiliaoFinanceiro”,这两个(和其他)将实现“Competency”列表并保存其他基本属性。关键是,我不必使用相同的方法实现多个服务和多个dao来保存在这里或那里更改的小东西,我认为这些东西可能有一些类似于从任何实体获取对象的通用dao或服务,而实体负责保存

我们尝试使用一个工厂来创建与所传递对象类型对应的dao,但我认为它仍然不存在。。。我不确定,但也许使用依赖注入会更优雅。。。谁能告诉我怎么解决这个问题


抱歉,英语不太好。

您需要一个facade界面并定义保存方法。然后是一个FacadeBean来实现它并编写业务逻辑。您需要依赖项注入,以便将facade接口注入到您需要的任何位置。如果您的实体相似,但字段很少,那么为什么不使用JPA的
mappedSuperClass
概念?您为什么试图重新发明轮子?有一些软件包可以为您自动完成所有操作。我大约在一年前创建了一个自动序列化并将对象保存到数据库中的程序,并以同样的方式返回。Hibernate是这方面的经典,我将XStream与之结合使用。请查看Java的定义,因为您提供的不是javaee。他不是在要求一个神奇的包裹。他在组织中有一个项目,需要最佳实践。相反,您提供的是代码。完全无关topic@pmp最好的做法不是重新发明轮子,而是使用现有的技术来完成这项工作。我有一种感觉,你是一个谁错过了这一点,因为代码只是一个例子。。。