1. 程式人生 > >hibernate 自身表關聯的多對一,一對多關係的實現

hibernate 自身表關聯的多對一,一對多關係的實現

需求如下:分類的資料表:id,parentid,name 要求,取出該分類的時候,同時得到該分類的父分類以及所有的子分類.分類模型如下

   @Entity(name = tbl_commodity_sales_category) 
   public class SaleCategory {
	@Id @GeneratedValue
	@Column(name = "id")
	private String id;
	@Column(name = "category_name")
	private String categoryName;
	@ManyToOne
	@JoinColumn(name = "parent")
	@NotFound(action=NotFoundAction.IGNORE)
	private SaleCategory parentCategory;
	@OneToMany
	@JoinColumn(name = "parent",nullable = true)
	private List<SaleCategory> subCategories;
	@Column(name = "category_no")
	private String categoryNo;
	@Column(name = "level")
	private int level;
	@Column(name = "last_flag")
	private String isLast;

	
}
@NotFound就是為了解決頂級分類沒有父分類,可能hibernate會報:

No row with the given identifier exists 這個錯誤