Java 用hibernate迁移数据库
我正在尝试将数据从Firebird数据库迁移到MySQL。我已经有了hibernate设置来创建初始数据库,现在我正在尝试通过hibernate迁移数据。我最初的想法是设置第二个hibernate会话,连接到另一个数据库,然后循环加载和保存数据,但我没有得到任何数据。我想知道是否有可能从一个会话加载数据并保存到另一个会话中Java 用hibernate迁移数据库,java,mysql,spring,hibernate,Java,Mysql,Spring,Hibernate,我正在尝试将数据从Firebird数据库迁移到MySQL。我已经有了hibernate设置来创建初始数据库,现在我正在尝试通过hibernate迁移数据。我最初的想法是设置第二个hibernate会话,连接到另一个数据库,然后循环加载和保存数据,但我没有得到任何数据。我想知道是否有可能从一个会话加载数据并保存到另一个会话中 try (Session mySqlSession = mySqlSessionFactory.openSession(); Session firebird
try (Session mySqlSession = mySqlSessionFactory.openSession(); Session firebirdSession = firebirdSessionFactory.openSession()) {
mySqlSession.beginTransaction();
firebirdSession.beginTransaction();
mySqlSession.createSQLQuery("SET FOREIGN_KEY_CHECKS=0").executeUpdate();
mySqlSession.getTransaction().commit();
Criteria criteria = firebirdSession.createCriteria(databaseTable);
for (Object record : criteria.list()) {
mySqlSession.save(record);
mySqlSession.flush();
}
mySqlSession.getTransaction().commit();
mySqlSession.createSQLQuery("SET FOREIGN_KEY_CHECKS=1").executeUpdate();
mySqlSession.getTransaction().commit();
}