码迷,mamicode.com
首页 > Web开发 > 详细

hibernate4之一对多关系映射(三)

时间:2016-02-17 22:40:22      阅读:168      评论:0      收藏:0      [点我收藏+]

标签:hibernate4之一对多关系映射

示例:一个部门(Department )下面有多个用户(User),多个用户对应一个部门

public class Department {
    private Integer id;
    private String name;
    private Set<User> users;
        //getter and setter  
}
public class User{
    private Integer id;
    private String userName;
    private Department department;
        //getter and setter  
}

用XML映射

<hibernate-mapping package="com.shen.hibernate4.entity">
    <class name="Department " table="tb_department ">
        <id name="id">
            <generator class="identity" />
        </id>
        <property name="name" />
       <!--反转:设置从User端加入数据失效,不维护关联关系。注:Hibernate默认inverse="false"为主控方,由主控方负责维护对象的关系联系。-->
        <set name="users" inverse="true">  
            <key column="department_id" />  
            <one-to-many class="User"/>
        </set>  
    </class>
</hibernate-mapping>
 
<hibernate-mapping package="com.shen.hibernate4.entity">
    <class name="User" table="tb_user">
        <id name="id">
            <generator class="identity"/>
        </id>
        <property name="userName" column="user_name"/>
         <!-- 此处需要与Department 端的配置的字段保持一致-->  
        <many-to-one name="department" column="department_id" class="Department " not-null="true"/>
    </class>
</hibernate-mapping>


用@Annotation映射

@Entity
@Table(name = "tb_department")
public class Category {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Integer id;
    private String name;
    
    //mappedBy 值为User中Department类型属性
    @OneToMany(mappedBy = "department")
    private Set<User> users;
    //getter and setter 
}
@Entity
@Table(name = "tb_user")
public class User{

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Integer id;
    private String userName;
    
    @ManyToOne  
    @JoinColumn(name = "department_id", nullable = false)
    private Department department;
        //getter and setter  
}





本文出自 “冰葫芦” 博客,请务必保留此出处http://shenlang7.blog.51cto.com/3102414/1742805

hibernate4之一对多关系映射(三)

标签:hibernate4之一对多关系映射

原文地址:http://shenlang7.blog.51cto.com/3102414/1742805

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!