我有一个程序需要使用到JPA的in查询操作,程序如下:String queryString = "select p from People p where people.username in (:username)";
Map<String, String> params = new HashMap<String, String>();
params.put("username", username);
List<People> list = getJpaTemplate().findByNamedParams(queryString, params);上面那个username是我传进去的参数,比如:
1. michael
2. michael.jacky当我传递一个参数进去的时候,能够查询到记录,但是传第二个参数进去的时候就无法查询到了如果我把程序修改为:
String queryString = "select p from People p where people.username in (" + username + ")";
List<People> list = getJpaTemplate().find(queryString);这样当我传
'michael','jacky'的时候,就能正常查询出记录JPA的这个查询语言跟Hibernate好像不太一样,我记得hibernate里面可以直接传一个List给参数,就能查出结果了不知是否是我对JPA的使用上出了什么问题,请高手指点一下,谢谢.

解决方案 »

  1.   

    此回复为自动发出,仅用于显示而已,并无任何其他特殊作用
    楼主【xiaomics】截止到2008-07-22 16:49:56的历史汇总数据(不包括此帖):
    发帖的总数量:0                        发帖的总分数:0                        每贴平均分数:0                        
    回帖的总数量:0                        得分贴总数量:0                        回帖的得分率:0%                       
    结贴的总数量:0                        结贴的总分数:0                        
    无满意结贴数:0                        无满意结贴分:0                        
    未结的帖子数:0                        未结的总分数:0                        
    结贴的百分比:---------------------结分的百分比:---------------------
    无满意结贴率:---------------------无满意结分率:---------------------
    如何结贴请参考这里:http://topic.csdn.net/u/20080501/09/ef7ba1b3-6466-49f6-9d92-36fe6d471dd1.html