所以我仍然試圖讓自己熟悉Hibernate Criteria API,並且我有一段我想要澄清的Java代碼。關於Hibernate API中Criteria.createCriteria的問題
Criteria c = super.getSession().createCriteria(PpNnCtDetail.class);
c.add(Restrictions.between("commencementDate", fromDate, toDate);
這部分我明白髮生了什麼 - 把它在SQL方面,它會是這樣的 - 糾正我,如果我錯了,
SELECT * FROM PpNnCtDetail WHERE commencementDate >= fromDate AND commencementDate <= toDate;
問題帶有以下兩個代碼上面的線。
c = c.createCriteria("nnContractTbl");
c.createCriteria("progCategory").add(Restrictions.in("progCategoryId", allProgCat));
c.createCriteria("acadOrgTbl");
c.createCriteria("serviceType");
c.createCriteria("campusTbl");
return c.list();
什麼是第一條線要完成的?這個任務是否回到了冗餘?
事實上,c.createCriteria試圖實現哪些行?什麼是等效的SQL查詢?更重要的是,c.list()會返回什麼?