夜光带你走进Hibernate(六)
夜光序言:
你一脸笑意,我满眼是你
正文:
多对一, 实现
目的:
通过多对一映射,能完全描述地址表、用户表的数据库的关系~~
public class Address {
private int id; private String name; private String shortName; private String code;
// 地址与用户, 是多对一的关系 private Users user; … } |
多对一映射: <!-- 夜光:多对一的配置: 1.映射的对象 2.对象对应的外键字段 3.对象的类型 注意: 对象一定是有映射文件进行映射!~~ (cn.Genius.d_many2one.Users 对应有映射文件) --> <many-to-one name="user" column="user_id" class="Users"></many-to-one> |
|
|
一对多, 实现
public class Users {
private int id; private String name; private int age; // 用户与地址,是一对多的关系 【夜光:注意一定要用接口接收~~】 private Set<Address> address = new HashSet<Address>(); } |
一对多映射: <set name="address" table="t_address"> <key column="user_id"></key> <one-to-many class="Address"/> </set> |
|
|
夜光总结:
一对多与多对一映射,
可以只配置多对一, 只能通过的多的一方维护关系~~
可以只配置一对多, 只能通过一的一方维护关系~~
双向配置: 一对多与多对一, 可以通过双向维护关系~~