在 Hibernate 中执行 sql CREATE TABLE 查询

Bes*_*est 2 sql hibernate hql

我需要使用 Java 方法动态创建一个表,并将其所有行转换为映射类对象的列表。问题是..

  • 有没有办法动态执行 CREATE TABLE 查询?

  • 我看到一些使用 doInHibernate() 的示例,但当我尝试它时它不起作用。我可以在没有特定方法的情况下做到这一点吗?

Chr*_*ris 5

您可以只执行本机 sql 查询:session.createSQLQuery("create table .....").executeUpdate(); 其中“session”是您的 Hibernate 会话。

不过,如果您已经拥有映射文件,则只需hibernate.hbm2ddl.auto在 hibernate 配置中设置该属性即可根据映射文件生成架构。