这是我的存储库界面中的查询。
@Query("SELECT new com.wellsfargo.loanManagementSystem.model.LoanCardAndEmpCardProjection"
+ "(l.loanId,l.loanType,l.durationInYears,"
+ "e.cardIssueDate)"
+ "FROM LoanCardMaster l JOIN l.loanEmpCardDetails e where e.employeeId = :employeeId")
这就是我在下面引用employeeId 的方式。
List<LoanCardAndEmpCardProjection> findSelectedFieldsFromLoanAndEmpCards(@Param("employeeId") String employeeId);
EmployeeId 是 LoanEmpCardDetails 来源的外键(EmployeeCardDetails 表)。我在查询或下面的函数中是否错误地引用了 emploeeId,因为当我在 WorkBench 中将其作为查询执行时,我得到了正确的结果。
选择 l1_0.loan_id、l1_0.loan_type、l1_0.duration_in_years、l2_0.card_issue_date 从loan_card_master l1_0加入employee_card_details l2_0 l1_0.loan_id=l2_0.loan_id_loan_id 其中 l2_0.employee_id_employee_id=1;
如有任何帮助,我们将不胜感激。
看起来id是Long类型,所以尝试改变这个
List<LoanCardAndEmpCardProjection> findSelectedFieldsFromLoanAndEmpCards(@Param("employeeId") Long employeeId);