//判断是否需要根据姓名进行查询 
if(mapCondition.get("strName") !=null && !"".equals(mapCondition.get("strName"))) {
hql.append(" and user.name like '%" + mapCondition.get("strName") + "%'");
}怎么消除%的影响?就是在输入框中输入%查不到正确的值  新手求解

解决方案 »

  1.   

    或者看看SQL又没有转义% -> \%
      

  2.   

    说个题外话:不知道都说过多少遍了,还成天在这拼接 SQL 语句!
      

  3.   

    if(mapCondition.get("strName") !=null && !"".equals(mapCondition.get("strName"))) {
    String strName = mapCondition.get("strName").toString() == "%"?"%25":mapCondition.get("strName").toString();
    hql.append(" and user.name like '%" + + "%'");
    }
      

  4.   

    if(mapCondition.get("strName") !=null && !"".equals(mapCondition.get("strName"))) {
    String strName = mapCondition.get("strName").toString() == "%"?"%25":mapCondition.get("strName").toString();
    hql.append(" and user.name like '%" + strName + "%'");