如何让Hibernate基于DDL / SQL脚本创建表?

时间:2012-11-20 14:47:43

标签: java sql hibernate

我有一个包含CREATE TABLE命令的sql / ddl脚本。

我使用hibernate,我希望hibernate执行此脚本来创建数据库结构。

怎么做?

1 个答案:

答案 0 :(得分:3)

如果您使用Spring,则可以使用其JDBC实用程序填充数据库:

<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:jdbc="http://www.springframework.org/schema/jdbc"
    xsi:schemaLocation="http://www.springframework.org/schema/jdbc http://www.springframework.org/schema/jdbc/spring-jdbc-3.1.xsd
        http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd">

    <jdbc:embedded-database id="dataSource" type="H2" />

    <bean class="org.springframework.jdbc.datasource.init.DataSourceInitializer" depends-on="sessionFactory">
        <property name="databasePopulator" ref="resourceDatabasePopulator" />
        <property name="dataSource" ref="dataSource" />
    </bean>

    <bean id="resourceDatabasePopulator" class="org.springframework.jdbc.datasource.init.ResourceDatabasePopulator">
        <property name="scripts">
            <array>
                <value>classpath*:init-hibernate.sql</value>
            </array>
        </property>
    </bean>
</beans>