如何配置 Hibernate 5 以强制 Mysql 使用 Innodb 引擎创建表?

How can I configure Hibernate 5 to force Mysql create tables using Innodb engine?

解决这个问题花了好几个小时,最后放弃了。 我需要我的应用程序来创建 Innodb 表,但默认情况下它们是在 Myisam 引擎中创建的。 我尝试设置 属性、

<property name="hibernate.dialect.storage_engine">innodb</property> 但它不起作用。

org.hibernate.dialect.MySQL57InnoDBDialect - 已弃用

发现有org.hibernate.dialect.InnoDBStorageEngineclass 但我无法在 hibernate.cfg.xml 中将其设置为 property name="hibernate.dialect" 因为

org.hibernate.dialect.InnoDBStorageEngine' is not assignable to 'org.hibernate.dialect.Dialect

原因。你知道我可以在哪里设置 InnoDBStorageEngine 吗? 还是有另一种方法可以强制 Hibernate 在创建表时使用 innodb? 提前致谢

Hibernate 5.2 documentaton 建议在弃用描述中做什么

MySQL57InnoDBDialect - Deprecated

Use "hibernate.dialect.storage_engine=innodb" environment variable or JVM system property instead.

因此请将 org.hibernate.dialect.MySQL57Dialect 与此 属性 组合使用。