【发布时间】:2014-02-19 05:48:46
【问题描述】:
在我的项目中,我使用 xml(不是注释)将数据库映射到类,我已将两个表映射到一个类,如下所示。
<hibernate-mapping>
<class name="com.fg.fixtransbridge.model.BookStatistics"
entity-name="BookStatistics" table="book_statistics">
</class>
<class name="com.fg.fixtransbridge.model.BookStatistics"
entity-name="BookStatisticsHistory" table="book_statistics_copy">
</class>
</hibernate-mapping>
当我尝试一次向两个表中添加数据时,只有 book_statistics 表被填满。这是因为我把它称为第一
b 是 BookStatistics 实例,其中填充了数据
session.saveOrUpdate("BookStatistics", b);
session.saveOrUpdate("BookStatisticsHistory", b);
如果我第一次调用 session.saveOrUpdate("BookStatisticsHistory", b),那么只有另一个表被填满。
SessionFactory sessionFactory;
ServiceRegistry serviceRegistry;
Configuration configuration = new Configuration();
configuration.configure();
serviceRegistry = new ServiceRegistryBuilder().applySettings(configuration.getProperties()).buildServiceRegistry();
sessionFactory = configuration.buildSessionFactory(serviceRegistry);
Session session = sessionFactory.openSession();
session.beginTransaction();
session.saveOrUpdate("BookStatistics", b);
session.saveOrUpdate("BookStatisticsHistory", b);
session.getTransaction().commit();
那么有没有办法使用单一服务来填充这两个表。提前致谢
【问题讨论】:
-
什么是 b ?一个 BookStatistics 或 BookStatisticsHistory,我假设它是 BookStatistics 实例,我是正确的
-
对不起,是的。这是一个 BookStatistics 实例。反正没有 BookStatisticsHistory 类
-
@Koitoer 你有什么答案吗?? :)
标签: java database hibernate pojo