我的JPA / Hibernate应用程序中有几个映射的对象。在网络上,我收到的数据包代表这些对象的更新,或者实际上可能完全代表新的对象。
我想写一个像
<T> T getOrCreate(Class<T> klass, Object primaryKey)
如果数据库中存在一个带有pk primaryKey的对象,则该对象将返回所提供类的一个对象,否则将创建该类的新对象,并将其持久化并返回。
接下来我将要处理的对象是在事务中更新其所有字段。
在JPA中是否有惯用的方法来执行此操作,还是有更好的方法来解决我的问题?