hibernate中文参数检索问题

String hql = "from Worker worker where worker.name='" + username +"'";

如果username的内容是汉字则hibernate在对上述语句进行方言转换时将汉字转为“???”从而无法查出所要记录,此时需要改用hibernate的动态参数进行绑定:

String hql = "from Worker worker where worker.name=:str";

//使用动态绑定参数
 public Object getOne(String hql,String str){
  Session session = this.getSession();
  Query query=session.createQuery(hql);
  query.setString("str", str);
  Object ob=query.setMaxResults(1).uniqueResult();
  return ob;
 }

worker = (Worker) hiber.getOne(hql, username);

这样就可以进行汉字参数的检索了。

阅读更多
个人分类: hibernate
上一篇Spring配置
下一篇关于UIData组件合理应用
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭