Rak*_*mar 3 java spring hibernate
当我尝试将一个实体与多个实体映射时,我收到此错误..
/// 这是我的候选人资料实体/////////
包 com.demo.project.premiumjobportal.model;
导入 java.io.Serializable;
导入 java.util.List;
导入 javax.persistence.CascadeType;
导入 javax.persistence.Column;
导入 javax.persistence.Entity;
导入 javax.persistence.FetchType;
导入 javax.persistence.GeneratedValue;
导入 javax.persistence.Id;
导入 javax.persistence.ManyToOne;
导入 javax.persistence.OneToMany;
导入 javax.persistence.Table;
导入 javax.validation.constraints.NotNull;
导入 javax.xml.bind.annotation.XmlRootElement;
导入 com.fasterxml.jackson.annotation.JsonBackReference;
导入 com.fasterxml.jackson.annotation.JsonIgnoreProperties;
//候选明细表:主表
@实体
@Table(name="candidate_profile")
@JsonIgnoreProperties({"hibernateLazyInitializer", "handler"})
@XmlRootElement
公共类 CandidateProfile 实现了 Serializable {
private static final long serialVersionUID = 1L;
@ID
@GeneratedValue
私有整数 ID;
@NotNull
@Column(name="first_name", 长度 = 25)
私人字符串名字;
@NotNull
@Column(name="last_name", 长度 = 25)
私人字符串姓氏;
@NotNull
@Column(名称=“用户名”,长度= 50)
私人字符串用户名;
@Column(name="alt_email_id", 长度 = 50)
私人字符串alternateEmailId;
@NotNull
@Column(name="mobile_no", 长度 = 15)
私人字符串 mobileNum;
@Column(name="alt_mobile_no", 长度 = 15)
私人字符串alternateMobileNum;
@Column(name="ssc_board", 长度 = 50)
私人字符串 sscBoard;
@Column(name="ssc_school", 长度 = 50)
私人字符串 sscSchool;
@Column(name="ssc_percent", 长度 = 4)
私人浮动 sscPercentage;
@Column(name="ssc_year_of_passout", 长度 = 4)
私人 int sscYearOfPassout;
@Column(name="hsc_board", 长度 = 50)
私人字符串 hscBoard;
@Column(name="hsc_school", 长度 = 50)
私人字符串 hscSchool;
@Column(name="hsc_percent", 长度 = 4)
私人浮动 hscPercentage;
@Column(name="hsc_year_of_passout", 长度 = 4)
私人 int hscYearOfPassout;
@Column(name="grad_university", 长度 = 100)
私人弦乐毕业生大学;
@Column(name="grad_institute", 长度 = 100)
私人字符串研究生院;
@Column(name="grad_percent", 长度 = 4)
私人浮动 gradidutePercentage;
@Column(name="grad_year_of_passout", 长度 = 4)
私人 int gradiduteYearOfPassout;
@Column(name="postgrad_university", 长度 = 100)
私人字符串后研究生大学;
@Column(name="postgrad_institute", 长度 = 100)
私人字符串 postGradiduteInstitute;
@Column(name="postgrad_percent", 长度 = 4)
私人浮动 postGradidutePercentage;
@Column(name="postgrad_year_of_passout", 长度 = 4)
private int postGradiduteYearOfPassout;
私人字符串笔记;
私人字符串密码;
@OneToMany(mappedBy = "candidateProfile", fetch = FetchType.LAZY,cascade = CascadeType.REMOVE)
@JsonBackReference
私单体验详情;
@OneToMany(mappedBy = "candidateProfile", fetch = FetchType.LAZY,cascade = CascadeType.REMOVE)
@JsonBackReference
私人名单候选人工作;
@ManyToOne
私人角色角色名称;
/* 构造函数 */
公共候选人档案(){
极好的();
}
// 获取器和设置器
/// 这是我的体验详情实体 ///////////
包 com.cfa.project.premiumjobportal.model;
导入 java.io.Serializable;
导入 javax.persistence.Column;
导入 javax.persistence.Entity;
导入 javax.persistence.GeneratedValue;
导入 javax.persistence.Id;
导入 javax.persistence.ManyToOne;
导入 javax.persistence.Table;
导入 javax.xml.bind.annotation.XmlRootElement;
导入 com.fasterxml.jackson.annotation.JsonIgnoreProperties;
//经验类,与CandidateProfile.class相连
@实体
@Table(name="experience_details")
@JsonIgnoreProperties({"hibernateLazyInitializer", "handler"})
@XmlRootElement
公共类 ExperienceDetails 实现了 Serializable {
private static final long serialVersionUID = 1L;
@ID
@GeneratedValue
私有整数 ID;
@Column(name = "tot_experenice", length = 2)
private String totExperience;
@Column(name = "companies_month_experience")
私人弦乐公司月经历;
@Column(name = "技能")
私人字符串_skills;
@Column(name = "extra_curricular")
私人字符串课外活动;
私人字符串笔记;
/* 映射:加入候选表 */
@ManyToOne
私人 CandidateProfile 候选人资料;
/*构造函数*/
公共体验详情(){
极好的();
}
/*构造函数使用字段*/
/**
* @param id
* @param totExperience
* @param companyMonthExperience
* @param _skills
* @param 课外活动
* @param 注释
* @paramCandidateProfile
*/
public ExperienceDetails(int id, String totExperience, String companyMonthExperience, String _skills,
String extraCurricular, String notes, CandidateProfileCandidateProfile) {
极好的();
this.id = id;
this.totExperience = totExperience;
this.companiesMonthExperience = CompaniesMonthExperience;
this._skills = _skills;
this.extraCurricular = 课外活动;
this.notes = 笔记;
this.candidateProfile =CandidateProfile;
}
/* 生成 Getter 和 setter */
/// 这是我的角色实体 /////
导入 java.io.Serializable;
导入 java.util.List;
导入 javax.persistence.CascadeType;
导入 javax.persistence.Column;
导入 javax.persistence.Entity;
导入 javax.persistence.FetchType;
导入 javax.persistence.GeneratedValue;
导入 javax.persistence.Id;
导入 javax.persistence.OneToMany;
导入 javax.persistence.Table;
导入 javax.xml.bind.annotation.XmlRootElement;
导入 com.fasterxml.jackson.annotation.JsonBackReference;
导入 com.fasterxml.jackson.annotation.JsonIgnoreProperties;
@实体
@表(名称=“角色”)
@JsonIgnoreProperties({"hibernateLazyInitializer", "handler"})
@XmlRootElement
公共类角色实现了 Serializable {
private static final long serialVersionUID = 1L;
@ID
@GeneratedValue
私有整数 ID;
@列(长度= 10)
私人字符串名称;
@OneToMany(mappedBy = "roleName", fetch = FetchType.LAZY,cascade = CascadeType.REMOVE)
@JsonBackReference
私人名单候选人资料;
@OneToMany(mappedBy = "companyRoleName", fetch = FetchType.LAZY,cascade = CascadeType.REMOVE)
@JsonBackReference
私人名单招聘人员详细信息;
我得到这个错误----------------
Failed to evaluate Jackson deserialization for type [[simple type, class
com.demo.project.premiumjobportal.model.CandidateProfile]]:
com.fasterxml.jackson.databind.JsonMappingException: Multiple back-reference
properties with name 'defaultReference'
Run Code Online (Sandbox Code Playgroud)
请帮我解决一下这个。我到处搜索并尝试了所有解决方案,但后来我也收到了这个错误。
如果您在项目中的 getter/setter 方法上使用 @JsonBackReference 两次以上,则应使用特定的引用名称来区分它们。
在Role实体类中,你用过@JsonBackReference两次
@OneToMany(mappedBy = "roleName", fetch = FetchType.LAZY,cascade = CascadeType.REMOVE)
@JsonBackReference
private List candidateProfiles;
@OneToMany(mappedBy = "companyRoleName", fetch = FetchType.LAZY,cascade = CascadeType.REMOVE)
@JsonBackReference
private List recruiterDetails;
Run Code Online (Sandbox Code Playgroud)
你应该把它改成——
@OneToMany(mappedBy = "roleName", fetch = FetchType.LAZY,cascade = CascadeType.REMOVE)
@JsonBackReference(value="candidate-profiles")
private List candidateProfiles;
@OneToMany(mappedBy = "companyRoleName", fetch = FetchType.LAZY,cascade = CascadeType.REMOVE)
@JsonBackReference(value="recruiter-details")
private List recruiterDetails;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2134 次 |
| 最近记录: |