Hibernate setParameter String

时间:2015-06-06 17:32:59

标签: hibernate

返回em.createQuery("""                 选择s.description,avg(c.taktTime)                 来自CountEntity c,SkillEntity s,FwmsUserEntity u,SkillTypeEntity t                 其中c.fwmsUser = u.id                     AND s.description IN(:skillsList)

            ).setParameter("skillsList", skillsListStr).getResultList()

不会返回任何值。列表大小为0,没有SQL错误。

但如果我这样做

返回em.createQuery(&#34;&#34;&#34;                 选择s.description,avg(c.taktTime)                 来自CountEntity c,SkillEntity s,FwmsUserEntity u,SkillTypeEntity t                 其中c.fwmsUser = u.id                     AND s.description in(&#39; Shelf Count&#39;,&#39; Notion Count&#39;,&#39; Tube Count&#39;,&#39; 2nd Count&#39;)< /强>

            ).setParameter("skillsList", skillsListStr).getResultList()

它工作正常。

my String skillsListStr =&#34;货架计数,概念计数,管数,第二计数&#34 ;;

如何使用setParameter设置&#34; skillsListStr&#34;?

任何帮助?

1 个答案:

答案 0 :(得分:0)

嗨,你宣布了你的&#34; skillsListStr&#34;变量作为String,但它应该是List,因为这是指定为参数。

尝试这样的事情:

List<String> skillsListStr = Arrays.toList(new String[]{"Shelf Count", "Notion Count", "Tube Count", "2nd Count"});