我的实体集如下
package com.vscut.erp.model;
import javax.persistence.*;
import java.util.Set;
/** 数据字典商品分类
Created by ShuD on 2016/5/24.
*/
@Entity
@Table(name="dictGoodClass")
public class DictGoodClass extends DataDictBase{
@Id
@SequenceGenerator(name = "good_generator", sequenceName = "GOOD_SEQ")
@GeneratedValue(strategy=GenerationType.SEQUENCE, generator = "good_generator")
@Column(unique = true, nullable = false, precision = 5, scale = 0)
private long id;
private String code;
private String name;
@ManyToOne
private DictUnit unit1;
@ManyToOne
private DictUnit unit2;
private String permissionCode;//许可证代码
private String normalTax;//普通税率
private String favTax;//优惠税率
private String exportTax;//出口税率
private String consumeTax;//消费税率
private String addTax;//增值税率
@OneToMany(cascade=CascadeType.ALL,fetch=FetchType.LAZY,mappedBy="dictGoodClass")
private Set factors;
private String remark;
@Column(nullable = false, length = 255)
public String getCode() {
return code;
}
public void setCode(String code) {
this.code = code;
}
@Column(nullable = false, length = 20)
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public long getId() {
return id;
}
public void setId(long id) {
this.id = id;
}
public DictUnit getUnit1() {
return unit1;
}
public void setUnit1(DictUnit unit1) {
this.unit1 = unit1;
}
public DictUnit getUnit2() {
return unit2;
}
public void setUnit2(DictUnit unit2) {
this.unit2 = unit2;
}
public Set getFactors() {
return factors;
}
public void setFactors(Set factors) {
this.factors = factors;
}
public String getRemark() {
return remark;
}
public void setRemark(String remark) {
this.remark = remark;
}
public String getAddTax() {
return addTax;
}
public void setAddTax(String addTax) {
this.addTax = addTax;
}
public String getConsumeTax() {
return consumeTax;
}
public void setConsumeTax(String consumeTax) {
this.consumeTax = consumeTax;
}
public String getExportTax() {
return exportTax;
}
public void setExportTax(String exportTax) {
this.exportTax = exportTax;
}
public String getFavTax() {
return favTax;
}
public void setFavTax(String favTax) {
this.favTax = favTax;
}
public String getNormalTax() {
return normalTax;
}
public void setNormalTax(String normalTax) {
this.normalTax = normalTax;
}
public String getPermissionCode() {
return permissionCode;
}
public void setPermissionCode(String permissionCode) {
this.permissionCode = permissionCode;
}
}
然后每次程序运行的时候它都会报对于DictUnit对象存在重复的引用约束,我想问这个问题怎么解决....
不好意思直接就贴代码,但是真的怎么百度都百度不到,求大神,谢谢了
@ManyToOne
private DictUnit unit1;
@ManyToOne
private DictUnit unit2;
应该是这里吧。在同一类下,你怎么定义了两个many to one 呢?
改成many to many
private Set< DictUnit> unit;