一尘不染

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

hibernate

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

我使用hibernate模式,并且希望hibernate模式执行此脚本以创建数据库结构。

这个怎么做?


阅读 298

收藏
2020-06-20

共1个答案

一尘不染

如果使用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>
2020-06-20