我试图将整数值放入一个名为Student_info的表的下拉菜单中,其中student_id是主键,在另一个表中,student_id是外键,所以我
<p:selectOneMenu value="#{studentMarksController.studentMarksInfoApp.studentMarksInfoAdd.studentId}" id="student_id" required="true" requiredMessage="Student Id is required" >
<f:selectItems value="#{studentMarksController.studentMarksInfoApp.findStudentMarksInfoSt_id()}" />
<f:convertNumber />
</p:selectOneMenu>
在另一个表中,student_id是外键,所以我使用下面的查询从student_info获取值
public List<StudentInfo> findStudentMarksInfoStuId(){
EntityManager em=getEntityManager();
try{
Query query=em.createQuery("SELECT s.studentId FROM StudentInfo s");
return query.getResultList();
}finally{
em.close();
}
}
这里的问题是在实体类Student_marks_allocation中,外键student_id数据类型是对象,因此插入其给出错误时不是有效数字
@JoinColumn(name = "STUDENT_ID", referencedColumnName = "STUDENT_ID")
@ManyToOne(optional = false)
private StudentInfo studentId;
答案 0 :(得分:0)
在您的案例Student_info
中,您将需要bean类中的转换器和equals以及hashcode方法