即使hbm2ddl.auto设置为update

时间:2020-10-31 11:36:18

标签: java hibernate jpa

我没有任何错误,程序启动时表只是空的。

hibernate.cfg.xml:

<hibernate-configuration xmlns="http://www.hibernate.org/xsd/orm/cfg">
    <session-factory>
        <property name="hibernate.connection.driver_class">org.sqlite.JDBC</property>
        <property name="hibernate.connection.url">jdbc:sqlite:data/javabot.db</property>
        <property name="hibernate.dialect">org.hibernate.dialect.SQLiteDialect</property>
        <property name="hibernate.hbm2ddl.auto">update</property>
        <mapping class="org.laconfrerie.discord.javabot.entities.ToxicMember" />
        <mapping class="org.laconfrerie.discord.javabot.entities.BannedUser" />
        <mapping class="org.laconfrerie.discord.javabot.entities.Vote" />
        <mapping class="org.laconfrerie.discord.javabot.entities.AutoRole" />
    </session-factory>
</hibernate-configuration>

persistence.xml

<persistence xmlns="http://xmlns.jcp.org/xml/ns/persistence" version="2.2">
    <persistence-unit name="javabot">
        <provider>org.hibernate.jpa.HibernatePersistenceProvider</provider>
        <properties>
            <property name="hibernate.archive.autodetection" value="class, hbm"/>
            <property name="hibernate.hbm2ddl.auto" value="validate" />
        </properties>
    </persistence-unit>
</persistence>

SessionFactory创建:

Configuration cfg = new Configuration();
cfg.configure("hibernate.cfg.xml");
final ServiceRegistry registry = new StandardServiceRegistryBuilder().configure("hibernate.cfg.xml").build();
sessionFactory = cfg.buildSessionFactory(registry);

附加说明:我使用JDA,并且在JDA完成加载后就立即删除表内容

0 个答案:

没有答案