DetachedCriteria類中uniqueResult()方法與list()方法區別


DetachedCriteria criteria = new RecruitmentCriteria().createForDealer(dealerId, jobTitleId)  
        	    			.dateFilterForSM(year, month)
        	    			.candidateFilterForSM(candidateId)
        	    			.finalAssessmentResultPassed().build();
Integer count = (Integer) criteria.getExecutableCriteria(getSession()).uniqueResult();
if(count > 0){
  return true;
}

 DetachedCriteria構建檢索條件時,有兩個方法.uniqueResult()與.list(),

采用前者uniqueResult()方法,如果查詢結果為1條,則返回值為1;查詢結果為0條,則返回0;查詢結果大於1條,則拋出異常NonUniqueRequestException.

采用后者list()方法,檢索時bibernate會為在底層拼上count(*),因此返回值為0或正整數。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM