JPA Query in 集合

使用 :param的方式来传递参数,下面举个例子

@Override
    public List<Map> ajaxRelationByCompanyUUID(String companyUUID, String ajaxQuery,List<Integer> types, Integer fetchSize) {
        String sql = "select * from Company where companyuuid= :companyuuid" +
                " and CompanyType in (:types)";
        Map<String, Object> params = new HashMap<String, Object>();
//公司uuid
        params.put("companyuuid",companyUUID);
//公司类型(集合)
        params.put("types",types);
//模糊查询
        if (StringUtils.isNotBlank(ajaxQuery)) {
            sql += " and (CompanyNameCN like :ajaxQuery )";
            params.put("ajaxQuery" ,"%" + ajaxQuery + "%");
        }
        Query query = em.createNativeQuery(sql);
        for (Map.Entry<String, Object> entry : params.entrySet()) {
            query.setParameter(entry.getKey(), entry.getValue());
        }
        return super.exectSqlMap(query);
    }

猜你喜欢

转载自www.cnblogs.com/hanjun0612/p/10812833.html