【发布时间】:2018-04-13 09:57:30
【问题描述】:
我想从 3 个表中检索所有记录:Personal_Info、Address 和 Fitness。我的主键是 Personal_Info 表中的 CandidateID,外键是 Address 表中的 CandidateID,以及 Fitness 表中的 UserID。
我已经编写了如下内部查询,这似乎是不正确的,因为我没有从三个表中获取所有记录。
public void getAllRecords()
{
int searchId = 1;
Session currentSession = sessionFactory.getCurrentSession();
String query = "FROM Address as a, Fitness as f inner join a.personalInfo as p inner join f.personalInfo as p where p.candidateID=:userID";
Query theQuery = currentSession.createQuery(query);
theQuery.setParameter("userID", searchId);
List<?> list = theQuery.list();
for(int i=0; i<list.size(); i++) {
Object[] row = (Object[]) list.get(i);
System.out.println("Record"+i+": "+row[i]);
}
}
如何更正这个内部查询?
【问题讨论】:
标签: spring hibernate model-view-controller