我正在使用 Spring Data 和 Apache Camel 进行项目,我们有 2 个数据库,Sql Server 和 Oracle 以及 JTA。出现问题是因为我需要从一个大文件(大约 10000000 条记录)中插入数据,所以我决定使用批量插入作为:
@PersistenceContext(unitName="persistenceUnitSql")
EntityManager em;
public void insertBatch() {
em.getTransaction().begin();
for (int i = 1; i <= 1000000; i++) {
Point point = new Point(i, i);
em.persist(point);
if ((i % 10000) == 0) {
em.getTransaction().commit();
em.clear();
em.getTransaction().begin();
}
}
em.getTransaction().commit();
}
但发生了这个问题:
A JTA EntityManager cannot use getTransaction()
任何帮助...