Java 使用hibernate将Excel工作表映射到数据库
我有一些主数据要填充到数据库中,这是在第一次执行时完成的一次性活动。我决定将数据保存在excel文件中的多个表格中。数据库中有一些关系,我必须在excel表中处理这些关系。此工作表将使用API(POI)读取,数据将使用hibernate持久化Java 使用hibernate将Excel工作表映射到数据库,java,excel,hibernate,orm,apache-poi,Java,Excel,Hibernate,Orm,Apache Poi,我有一些主数据要填充到数据库中,这是在第一次执行时完成的一次性活动。我决定将数据保存在excel文件中的多个表格中。数据库中有一些关系,我必须在excel表中处理这些关系。此工作表将使用API(POI)读取,数据将使用hibernate持久化 请建议这是正确的方法还是有更好的方法来处理?是否有其他方法使用hibernate将excel转储到数据库中(需要一个excel文件并支持5种类型的数据库)?使用excel和POI您可以实现这一点,但当您要求其他方法时,它就在这里: 如果确定这是一次性活动,
请建议这是正确的方法还是有更好的方法来处理?是否有其他方法使用hibernate将excel转储到数据库中(需要一个excel文件并支持5种类型的数据库)?使用excel和POI您可以实现这一点,但当您要求其他方法时,它就在这里: 如果确定这是一次性活动,则可以使用
hibernate.hbm2ddl.import_files
属性,该属性将在创建数据库时执行.sql文件
在hibernate配置中添加hibernate属性hibernate.hbm2ddl.import_文件。将hibernate.hbm2ddl.aut
o属性更改为create
。属性hibernate.hbm2ddl.import_files
的值是一个SQL文件,它是@/classes文件夹
会话工厂bean看起来像
<bean id="sessionFactory"
class="org.springframework.orm.hibernate4.LocalSessionFactoryBean">
<property name="dataSource" ref="dataSource" />
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">${hibernate.dialect}</prop>
<prop key="hibernate.show_sql">${hibernate.show_sql}</prop>
<prop key="hibernate.hbm2ddl.auto">create</prop>
<prop key="hibernate.hbm2ddl.import_files">initial_data.sql</prop>
</props>
</property>
</bean>
${hibernate.dial}
${hibernate.show_sql}
创造
初始_data.sql
Hi-Amogh,我之所以要换成其他格式,是因为SQL语法随着数据库类型的变化而变化。要支持5种类型的数据库,我必须管理5个不同的.sql文件。此外,我想知道在将数据移植到数据库时,如何在excel文件中保留关系database@Sushant根据我的经验,在excel中维持关系是相当困难的,您可以使用@Sushant学习Excel数据模型和关系。我可以理解多个数据库的问题,但如果您遵循ANSI SQL语法,您可以准备一个.SQL文件,该文件将适用于所有数据库。