我想使用休眠与现有的MySQL数据库使用Eclipse。外键休眠配置
我成功地将表映射到类并执行一些查询。 但我有一对多关系的问题。
我有表“CARATTERISTICHE”(属性),实际上是一个树,由连接表“VALORI”(值)描述:“fk_child”“fk_parent”。
我希望Caratteristica课程有一个类型为List<Caratteristica>
的字段“children”,其中的孩子应该加入CARATTERISTICA和VALORI。
我的第一次尝试是创建一个pojo Caratteristica并让eclipse生成hibernate的配置文件。
这是行不通的,因为当我启动getChildren时,我得到的只是同一个对象(即每个节点都是他的父亲,这在我的db中是错误的)。
这是生成的XML的摘录:
<class name="model.Caratteristica" table="caratteristiche">
<id name="id" type="java.lang.Integer">
<column name="ID"/>
<generator class="assigned"/>
</id>
<set access="field" lazy="true" name="children"
sort="unsorted" table="valori">
<key>
<column name="id"/>
</key>
<one-to-many class="model.Caratteristica"/>
</set>
注意,如果从ID更改列键fk_child他不能在表“CARATTERISTICHE”找到fk_child(但它看起来应该在VALORI,对吧?)
我也试过从表生成pojos,但它更糟.. 也许我有这个问题hibernate- composite key configuration但是..这是我第一次使用hibernate,我真的迷路了!
从db中生成POJO和DAO有什么问题? – 2013-02-24 20:39:35
@RomanC我跟着这个http://www.wikihow.com/Generate-Hibernate-Pojo-Classes-from-DB-Tables,但我得到这个错误org.hibernate.impl.SessionFactoryObjectFactory - 无法将工厂绑定到JNDI – 2013-02-24 20:53:48
你为什么将工厂绑定到JNDI? – 2013-02-24 21:01:38