0
我想在SpringMvc模型類中實現多對一的關係。但我無法找到任何能夠理解這項工作的例子。在Hibernate查詢中出錯。錯誤:org.hibernate.hql.ast.QuerySyntaxException
return (Student_Course) session.getCurrentSession().createQuery("from Student_Course as sc where c.user.id=?").setInteger(0, user_id).uniqueResult()
在上面的代碼中,我試圖通過hibernate查詢從數據庫中檢索Student_Course表,但它給了我這個錯誤。
錯誤
org.hibernate.hql.ast.QuerySyntaxException: Invalid path: 'c.user.id' [from com.sanjay31321.sys.model.Student_Course as sc where c.user.id=?]
是否有任何其他方式,我可以寫這個的HQL查詢,以便我能得到這個表。請幫幫我。
場類別:
@Entity @Table (name="Course")
public class Course {
@Id @Column @GeneratedValue(strategy=GenerationType.AUTO)
private int id;
@Column(name="course_name")
private String name;
//Setter and Getter
}
Student_Course類別:
@Entity @Table (name="Student_course")
public class Student_Course {
@Id @Column @GeneratedValue(strategy=GenerationType.AUTO)
private int id;
@ManyToOne @JoinColumn(name="user_id")
private User user;
@ManyToOne @JoinColumn(name="course_id")
private Course course;
//Setter and Getter
}
用戶類別:
@Entity @Table (name="user")
public class User {
@Id @Column @GeneratedValue(strategy=GenerationType.AUTO)
private int id;
@Column(name="email") @Email
private String email;
@Column(name="password")
private String password;
//Setter and Getter
}
StudentCourseDaoImpl類
@Repository
public class StudentCourseDaoImpl implements StudentCourseDao{
@Autowired private SessionFactory session;
@Override
public Student_Course getStudentCourseByUserID(int user_id) {
return (Student_Course) session.getCurrentSession().createQuery("from Student_Course as sc where c.user.id=?").setInteger(0, user_id).uniqueResult();
}
}
嘗試像下面這樣做 –
它正在工作..我在那裏犯了一個錯誤...非常感謝你的朋友。 –