我有一个使用Hibernate 4.1和Spring 3.1.1的应用程序.我使用Spring的HibernateJpavendorAdapter并将generateDdl设置为true来创建实体.
我刚刚创建了一个View并创建了一个实体来映射到该视图.视图的实体使用@ Entity,@ Table(名称=“ViewName”)和@Immutable进行注释.当我部署Web应用程序时,它会自动为所有实体创建表,这些表为应该映射到我的View的实体创建一个表.我必须进入并手动删除该表,然后创建视图.虽然我可以继续这样做,但我想知道是否有办法指定不为特定的“视图”实体创建表.
最佳答案
如果将其标记为实体,那么如果将hibernate.hbm2ddl.auto属性设置为update,create-drop或create,则hibernate将始终尝试创建表.要停止此操作,请在配置文件中删除此设置.
正如凯文指出的那样,这些选项应该只在开发阶段使用,或者你的产品数据库可能会发生很糟糕的事情.在部署之前一定要删除它们.
查看hibernate文档以获取更多信息
http://docs.jboss.org/hibernate/orm/3.6/reference/en-US/html/session-configuration.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。