Java 映射错误:找到多个具有给定标识符的行
我正在开发一个spring boot应用程序,我正在使用JPA和hibernate。Java 映射错误:找到多个具有给定标识符的行,java,spring,hibernate,jpa,Java,Spring,Hibernate,Jpa,我正在开发一个spring boot应用程序,我正在使用JPA和hibernate。我面临两个实体用户和评估之间的映射关系问题 主要思想是通过另一个(评估者)评估用户 User.java public class User implements Serializable { private static final long serialVersionUID = 1209816669845063949L; @Id @GeneratedValue private
我面临两个实体用户和评估之间的映射关系问题
主要思想是通过另一个(评估者)评估用户
User.java
public class User implements Serializable {
private static final long serialVersionUID = 1209816669845063949L;
@Id
@GeneratedValue
private int idUser;
private String login;
private String password;
@ManyToMany(mappedBy = "listUsers")
private List<ProjectGroup> listProjectGroup;
@OneToOne(mappedBy = "EvaluatedUser")
private Evaluation evaluation1;
@OneToOne(mappedBy = "Evaluater")
private Evaluation evaluation;
}
public class Evaluation {
@Id
@GeneratedValue
private int idEvaluation;
@OneToOne(cascade = { CascadeType.PERSIST, CascadeType.MERGE })
@JoinColumn(name = "evaluateduser_fk")
private User EvaluatedUser;
@OneToOne(cascade = { CascadeType.PERSIST, CascadeType.MERGE })
@JoinColumn(name = "evaluater_fk")
private User Evaluater;
@OneToOne(cascade = { CascadeType.PERSIST, CascadeType.MERGE })
@JoinColumn(name = "project_fk")
private Project project;
@OneToOne(cascade = { CascadeType.PERSIST, CascadeType.MERGE })
@JoinColumn(name = "notes_fk")
private Notes notes;
}
EvaluationController.java
我使用此方法返回所有评估
@GetMapping(path = "all-evaluation", produces = {"application/json" })
public ResponseEntity<List<Evaluation>> getAllEvaluations() {
List<Evaluation> list = evaluationService.findAll();
return new ResponseEntity<List<Evaluation>>(list, HttpStatus.OK);
}
@GetMapping(path=“all evaluation”,products={“application/json”})
公共响应获取所有评估(){
List=evaluationService.findAll();
返回新的响应属性(列表,HttpStatus.OK);
}
问题是,我不能对同一个用户进行两次评估,我认为问题在于我的关系OneToOne这是我在返回json时遇到的异常:
出现意外错误(类型=内部服务器错误, 状态=500)。找到多个具有给定标识符的行:1, 类别:com.talan.entity.Evaluation;嵌套异常是 org.hibernate.hibernateeexception:具有给定 找到标识符:1,用于类:com.talan.entity.Evaluation
任何帮助都将非常感谢请看一看您能否用业务“语言”解释用户与评估的关系?这是一个ERP平台,因此登录用户必须在一组工作人员中进行选择以评估他们。我的工作是跟踪Evaluator(登录用户)和Evaluator(工作用户)。