论坛首页 Java企业应用论坛

『类型』hibernate3不能查询中文?

浏览 38283 次
该帖已经被评为精华帖
作者 正文
   发表时间:2005-07-12  
karna 写道
robbin 写道
你那种拼HQL的用法根本就是错的,只要你改成适用占位符就行了。自己错误的用法不能怪Hibernate。


这个用法确实不合理,但是并不能应此而否认Hibernate的bug


如果真的是bug,那么请问为什么正确的用法下,就不会出现乱码问题呢?
0 请登录后投票
   发表时间:2005-08-14  
如果采用的是拼的方式,从2升级到3确实有问题.
[DEBUG] 2005-08-14 14:33:58 jaoso.news.service.impl.CatalogServiceImpl - Find catalog with title: 新闻动态
[DEBUG] 2005-08-14 14:33:58 org.springframework.transaction.support.TransactionSynchronizationManager - Retrieved value [org.springframework.orm.hibernate3.SessionHolder@1ee2ea8] for key [org.hibernate.impl.SessionFactoryImpl@952905] bound to thread [http-80-Processor24]
[DEBUG] 2005-08-14 14:33:58 org.hibernate.impl.SessionImpl - iterate: from Catalog catalog where catalog.catalogTitle = '新闻动态'
[DEBUG] 2005-08-14 14:33:58 org.hibernate.engine.QueryParameters - named parameters: {}
[DEBUG] 2005-08-14 14:33:58 org.hibernate.hql.ast.QueryTranslatorImpl - compile(); : The query is already compiled, skipping...
[DEBUG] 2005-08-14 14:33:58 org.hibernate.jdbc.AbstractBatcher - about to open PreparedStatement (open PreparedStatements: 0, globally: 0);
[DEBUG] 2005-08-14 14:33:58 org.hibernate.SQL - select catalog0_.js_ac_catalog_id as col_0_0_ from js_ac_catalog catalog0_ where catalog0_.js_ac_catalog_title='&–°é—&&Š¨&€' limit ?
0 请登录后投票
   发表时间:2005-10-10  
楼上的能不能详细说下在like语句里面占位符是怎么用的?
比如我的hql原来是这样的:
select jb.skid,jb.jobName,jb.seekerSex,jb.requireDegree,jb.workPlace,jb.salary,jb.publishDate,cp.companyName from HRJob jb,Company cp where jb.company=cp.skid and jb.workPlace like '%广州%' and jb.jobName like '%软件%'
改成占位符表示应该怎么改?
0 请登录后投票
   发表时间:2005-10-12  
楼上的这个就复杂了,应该用到连接了
0 请登录后投票
   发表时间:2005-10-17  
getHibernate().find(".... like ? ", "%广州%")
0 请登录后投票
   发表时间:2005-10-27  
dhj1 写道
这是Hibernate3.02- 3.05的 BUG

解决办法是升级到 Hibernate3.1 rc2  !  只需要替换 hibernate3.jar 文件就可以了!
0 请登录后投票
   发表时间:2005-11-01  
dhj1 写道
sleonk 写道
dhj1 写道
这是Hibernate3.02- 3.05的 BUG

解决办法是升级到 Hibernate3.1 rc2  !  只需要替换 文件就可以了!



可以的,我原来用Hibernate3.05有这个问题,后来从www.hibernate.org上下载Hibernate3.1 rc2  的tar.gz包. 把这个包里的hibernate3.jar 考过来替换就行了.  其它的依赖的包,我全部用spring1.2.4里的. 如果你这样还不行,就没办法了,不过我的行了!


已经解决了,就是按dhj1
说的方法做的,多谢了!
0 请登录后投票
   发表时间:2005-12-27  
robbin 写道
karna 写道
robbin 写道
你那种拼HQL的用法根本就是错的,只要你改成适用占位符就行了。自己错误的用法不能怪Hibernate。


这个用法确实不合理,但是并不能应此而否认Hibernate的bug


如果真的是bug,那么请问为什么正确的用法下,就不会出现乱码问题呢?

如果不是bug,为什么拼HQL的时候查询的时候并不报错?再说了,文档上也没见说这样拼HQL就是错误的。我认为这就是一个bug
0 请登录后投票
   发表时间:2005-12-27  
呵呵  不管他是不是bug,大家知道怎么做正确就好了
0 请登录后投票
   发表时间:2006-02-15  
用绑定参数的hql语句就可以了;
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics