我是OpenJPA的新手
我试图将数据插入到表中,其中一些来自另一个表。下面是方案。

Table1: id, app_name, app_version, app_active

Table2: id, app_name, app_version, dev_name, dev_Lastname, dev_shortname,

Pojo1 maps fields to column of table1
Pojo2 maps fields to column of table2


查询:

insert into table2 ("dev_name","dev_lastname","dev_shortname") select t1.app_name, t1.app_version from Table1 t1 where t1.app_name = ?


我不知道如何使用Openjpa运行此查询,以及如何在两个pojo中将这些字段相互映射。
如果我使用Query object,那么pojos呢?他们会用吗?我的意思是我需要做transaction.save吗??

任何帮助与示例代码表示赞赏。

最佳答案

当JPA处理对象关系时,您的查询将直接在数据库中处理数据。

我不确定您要解决的问题是什么,但是可以阅读Pojo1将其转换为刚刚保存的Pojo2对象吗?

编辑:
在Java应用程序中,首先使用一些查询从实体管理器中检索Pojo1。
然后使用所需的Pojo1字段构造相应的Pojo2对象。然后只需要使用新的Pojo2对象访问EntityManager.persist。

要执行您显示的内容可以在一行sql语句中完成,这是相当复杂的。

07-24 09:18