我在Hibernate上相对较新,因此有以下问题:
当我从现有数据库生成实体时,有没有办法排除特定的列?为此,我在Eclipse Luna中使用了Hibernate Tools。
答案 0 :(得分:0)
如果您愿意,可以从生成的文件中删除该列。
答案 1 :(得分:-1)
我也是Hibernate的新手,需要从数据库生成大量实体。在整天努力学习如何做到这一点后,我终于得到了一个不错的答案:使用Hibernate Tools作为Maven插件或使用蚂蚁。
我发现了有关如何将Hibernate工具初始配置为Maven插件的有趣讨论:https://developer.jboss.org/message/801478#801478
然后针对您的具体问题(也是我的)如何为实体生成排除不需要的列,这就是答案:
您需要编写一个hibernate-reverse-engineering.xml
文件,如下所示:
<table name="myTable">
<!--...magic tricks and configurations...-->
<column name="myColumnName" exclude="true"/>
</table>
但这仅适用于myTable列,而不适用于数据库/模式中的所有列(我需要的是= [)。我没有看到任何全局列过滤器标记或任何告诉Hibernate忽略您映射到JPA实体的所有表的列。
以下是hibernate-reverse-engineering.xml
的文档,其中包含示例以及您可以执行的所有魔术技巧:
http://docs.jboss.org/tools/latest/en/hibernatetools/html/reverseengineering.html