首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

hibernate查询时传接的参数有中文

2012-07-16 
hibernate查询时传递的参数有中文看这样一个查询:Hibernate: select computer0_.ID as ID0_, computer0_.n

hibernate查询时传递的参数有中文

看这样一个查询:

Hibernate: select computer0_.ID as ID0_, computer0_.name as name0_ from yang.t_computer computer0_ where computer0_.name=杨

?这是由于我们拼字符串产生的错误,通过查看hibernate的语句(computer0_.name=杨),我们或许发现了错误的原因。

下面是解决方法:

?方法一:

???? 将sql语句改为:String hql="from Computer c where c.name='"+name+"'";

??? (不推荐使用这种方法,在某些情况下有可能会出现错误!)

方法二:

使用hibernate的绑定参数的方式进行查询:

String hql="from Computer c where c.name=:name";
???Query q=s.createQuery(hql);
???q.setString("name", name);

当然可能还有其他解决方案,暂列出常用的两种,仅供参考。

热点排行