[Java教程]JPA树形结构实体关系映射
0 2012-07-14 12:00:35
有时候我们需要设计树形结构实体,比如常见的部门组织就是典型的树形结构。
1、组织架构实体代码:package cn.luxh.jpa.entity;import java.util.HashSet;import java.util.Set;import javax.persistence.CascadeType;import javax.persistence.Column;import javax.persistence.Entity;import javax.persistence.FetchType;import javax.persistence.GeneratedValue;import javax.persistence.Id;import javax.persistence.JoinColumn;import javax.persistence.ManyToOne;import javax.persistence.OneToMany;import javax.persistence.Table;/** * 组织架构 * @author Luxh */@Entity@Table(name="t_organization")public class Organization { @Id @GeneratedValue private Long id; /**组织名称*/ @Column(length=64) private String name; /**组织编码*/ @Column(length=64) private String code; /**父组织*/ @ManyToOne @JoinColumn(name="parent_id") private Organization parent; /**子组织*/ @OneToMany(cascade=CascadeType.ALL,fetch=FetchType.LAZY) @JoinColumn(name="parent_id") private Set children = new HashSe