所以,这就是我想要做的。有些人喜欢这样,我已经能够在openerp中找到。
我想,我可以简单地声明一个bean,它也是一个JPA持久化实体,例如:
Example.java:
package my.project;
@Configurable
@Entity
public class Example {
String a;
String b;
...
}
当然,这个类已经包含了JPA持久性注入,因此它可以作为普通的JPA支持的持久类从java代码处理。我的目标是从Spring applicationContext.xml
:
的applicationContext.xml:
<bean class="my.project.Example">
<property name="a" value="test_a"/>
<property name="b" value="test_b"/>
</bean>
我认为它真的很有趣:
persist()
方法,但前提是它已经存在于数据库中。有可能吗?是否有任务的示例代码? : - )
答案 0 :(得分:1)
您是否考虑过使用工厂方法?您可以在里面插入实体管理器并调用查找/保存内部。然后,工厂方法将从数据库返回您的bean实例,或者创建一个新实例并保留它。 对我来说,这将是更好的解决方案,也很容易在测试中模拟。
答案 1 :(得分:1)
不,没有现成的通用解决方案。您可以做的只是在部署时从Bean执行一些代码,如here所述。如果要使其更通用,以便从XML文件中读取属性值,则可以自由地解析Bean中的XML数据并执行通用逻辑。