我通过JBoss hibernate reverse engineering为我们的大型数据库生成实体。我希望在实体中看到级联注释,但是没有在代中看到它们。
有没有办法指导hibernate考虑外键并使用级联注释生成实体?
答案 0 :(得分:2)
不幸的是,虽然这是可能的,但还没有记录。 它应该记录在6.2.4.3. foreign-key。
查看hibernate-reverse-engineering-3.0.dtd,元素中有级联属性:
代码是真相! 看一下(hibernate-tools branch 5.2),我们可以看到cascade的可能值:
对于org.hibernate.tool.hbm2x.pojo.EntityPOJOClass中的Hibernate# getHibernateCascadeTypeAnnotation :
https://github.com/hibernate/hibernate-tools/blob/5.2/src/java/org/hibernate/tool/hbm2x/pojo/EntityPOJOClass.java#L497
值为[ persist, merge, delete, refresh, all ]
(多次接受)
使用的枚举类型是 org.hibernate.annotations.CascadeType 。
对于org.hibernate.tool.hbm2x.pojo.EntityPOJOClass# getCascadeTypes 中的JPA:
https://github.com/hibernate/hibernate-tools/blob/5.2/src/java/org/hibernate/tool/hbm2x/pojo/EntityPOJOClass.java#L421
值为extension=dom.so
(多次接受)
使用的枚举类型是 javax.persistence.CascadeType 。