hibernate把我搞糊涂了。。。。

自大学习hibernate以来,对于一对多关系,就一直是弄成这样的形式,比如:

[code="java"]
public class Person{
....
List

addresses;
....
}
[/code]

可最近用jdbc的时候,发现这么弄行不通了我靠。。。必须得这么弄才行
[code="java"]
public class Person{
....
List addressIds;
....
}
[/code]

到底应该怎么弄啊?为什么会有这样的区别。。。。

这只是实体封装的问题,两种都可以用,先说第一种,如果用hibernate直接配置好mapping,可以直接查询到Person中的Address列表,不需要再手动查询,如果用JDBC你可以查询到所有的Address的id,然后通过id查询到Address对象,再把所有Address放入List中,第二种,如果用hibernate,就不能配置一对多的关系了,只能把addressId当成是一个字段的值来处理,如果用JDBC就不用说了

Hibernate就是要帮你维护java类之间的关系,其实用JDBC也可以做到,你再查询出Person对象后,然后再查询出所有的Address再set到Person中不就一样了么?