[英]JPA oneToMany self mapping
我有一个JPA实体映射为:
@Entity
@Table(name = "CATEGORIES")
public class Category {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name = "ID_CATEGORY")
private int idCategory;
@Column(name = "POSITION")
private int position;
@Column(name = "SEO_VALUE")
private String seoValue;
@Column(name = "VALUE")
private String value;
@Column(name = "DESCRIPTION")
private String description;
@Column(name = "SMART_CODE")
private String smartCode;
我需要使用SMART_CODE字段将他自己加入Category。 我尝试映射为:
@OneToMany(mappedBy="smartCategory")
private List<Category> smartList = new ArrayList<Category>();
@ManyToOne
@JoinColumn(name="SMART_CODE", referencedColumnName="SMART_CODE",insertable=false, updatable=false)
private Category smartCategory;
但这没用。
我有一个表Categories,其中有一个字段SMART_CODE。 SMART_CODE用于联接表内的记录,例如:
idCategory .. ... ... .. SMART_CODE
1 .. ... ... .. 2000034
2 .. ... ... .. 2000034
.................................
100 .. ... ... .. 2000034
我想映射我的类别实体以获取具有相同SMART_CODE(smartList)的类别列表。
谁能帮我?
谢谢
卡洛
我在下面的行中发现了一些东西
@ManyToOne
@JoinColumn(name="SMART_CODE", referencedColumnName="SMART_CODE",insertable=false, updatable=false)
private Category smartCategory;
而是将其更改为以下内容
@ManyToOne(cascade=CascadeType.ALL)
@JoinColumn(name="SMART_CODE",nullable=true)
private Category smartCategory;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.