2

这让我发疯 - 我非常肯定Hibernate可以确定映射表之间的关系,因此在POJO的生成中反映了这一点。Hibernate工具:映射和注解失败

除外。

我使用MySQL与STS & Hibernate的工具4.0.0和我有一个一对多和一对一一个表的关系,人与人之间< - >电话和手机< - > PHONETYPE和我能够使用'Hibernate代码生成配置'生成'域代码'和'DAO代码',但是这两个文件之间没有任何映射。

现在,这里是一个可能的问题:

为了让所有任何注释,我已经选择切换到“生成EJB3注解”。现在我在这里使用普通的旧Hibernate,并且不是 JPA。

所以我的问题是:

  1. 可以休眠工具生成老式Hibernate注解?
  2. 它可以在POJO(即@manytomany/@manytoone)中生成映射信息吗?

非常感谢您的帮助,

鲍勃

+0

好的,所以我很确定#1的问题是YES,您可以使用它来生成Hibernate特定的代码,它将与Hibernate的ORM一起使用。但仍然没有任何关于如何将它反转到@ manytomany/@ manytoone等外键关系的问题。请帮助! –

+0

你有没有在数据库中存在正确的外键约束? – Firo

+0

@Firo是的我有我@to manytoone关系,再加上我用一个更复杂的数据库与大量的@ manytomany关系和没有正常工作。 –

回答

2

OK,我得到了它在过去的工作!

问题是,所有的技术性事物都是简单而深刻的。

一句话:区分大小写

我创造了我的资本化表(即人,电话),我使用了MySQL工作台创建外键,它们是这样的:

约束FK_Phone_Person外键(为person_id)参考文献人(为person_id)

代替

约束FK_Phone_Person外键(为person_id)参考文献p erson(person_id)

注意大小写。

在花了大量的血液,汗水和泪水试图让这个该死的东西工作时,一直都是这个问题!

0

曾为

我从STS的Hibernate工具插件创建新的反向工程XML “hibernateII.reveng.xml” 日食,它解决了这个问题。

虽然我也尝试更改现有文件的内容,但这并没有解决,新旧文件的内容相同,很奇怪,但新文件解决了问题。