示例:部门下有部门(Department )

public class Department {
        private Integer id;
        private String name;
        private Set departments;
        private Department department;
        //set get
}

用XML映射


    
        
            
        
        
         
          
              
              
         
    


 用@Annotation映射

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

        @Id
        @GeneratedValue(strategy = GenerationType.IDENTITY)
        private Integer id;
        private String name;
        
        @OneToMany(mappedBy = "department", targetEntity = Department.class, cascade = CascadeType.ALL)  
        private Set departments;
        
        @ManyToOne  
        @JoinColumn(name = "parent_id") 
        private Department department;
        //set get
}