我有一个包含4个离开名称的leaveList。此leaveList作为映射值传递。我想通过在hql查询中传递leaveList来从CompanyLeave Table中获取离开详细信息。请注意,我的公司离开表包含6个离开的细节.leaveList有3个离开的名称。我想从CompanyLeave表中获取这3个离开的细节。如何在hql查询中传递列表,其中列表是地图的值
代码HQL查询这里leaveNameList是一个清单,以及地图
public List<CompanyLeaveType> getByValidLeave(Map<String, Object> params) {
Query query = sessionfactory.getCurrentSession().createQuery("from CompanyLeaveType WHERE companyCode = :companyCode and leaveName IN (:leaveNames)");
query.setParameter("companyCode", params.get("companyCode"));
query.setParameter("leaveNames", params.get("leaveNameList"));
List<CompanyLeaveType> validLeaveDetails = query.list();
return validLeaveDetails;
}
注:我有java.util.ArrayList中不能转换为java.lang.String error.How可我通过列表在hql查询?