最近在项目中遇到了一个问题,就是做查询的时候,如果用户输入中文的话,明明数据库有这样的记录,却怎么也检索不到结果。作为调试的手段,我把hql语句打印出来,也没有发现什么问题,和预期的一样。甚是郁闷,后来,上网查了一下资料,原来是hibernate3对中文的支持不是太好,需要在hibernate的配置文件中添加一个属性,(这里使用了spring的IOC容器来注入)
<property name="hibernateProperties">
<props>
<prop key="hibernate.query.factory_class">
${hibernate.query.factory_class}<!--添加这个属性就可以了-->
</prop>
........................
</property>
org.hibernate.hql.classic.ClassicQueryTranslatorFactory
原因是hibernate在把hql转换成sql语句的时候,出现了乱码(如果有中文的话),按以上的配置的话,就没有什么问题了。还有一个方法就是,使用预编译的hql,然后动态绑定参数。不过这个方法是针对这一个函数本身而言的,如果你是使用Hibernate3而很多查询涉及中文的话,最好使用配置文件的方式,简单。
分享到:
相关推荐
该项目是解决hibernate反向工程生成的实体文件中文备注乱码问题的。 试用环境 hibernate-version 4.0.1 Hibernate Tools 5.1.4.v20170413-1729 org.hibernate.eclipse.feature.feature.group JBoss by Red Hat ...
hibernate+mysql 中文存入数据库乱码解决方法
解决hibernate与MySql存储中文时出现乱码问题
web.xml(仅写出中文处理部分,spring的配置不用改变) <filter-name>encodingFilter <filter-class>org.springframework.web.filter.CharacterEncodingFilter <init-param> <param-name>encoding...
ssh spring+stuts+hibernate+sql server 中文乱码解决方案_lj管用.txt
hibernate的中文问题的解决方案
以hibernate-tools-5.2.1.Final.jar为例,5.0以下的版本尚未验证
总共有2个版本,根据自己的需求使用版本3或者5: 1. hibernate-tools-3.4.0.CR2.jar是修改完成的jar包,直接替换原来的jar包, 重启eclipse即可生效(插件包所在路径是:D:\eclipse\plugins\org.hibernate.eclipse....
打印sql语句还是中文 到数据库发现乱码,本以为是hibernate搞的,结果证明不是hibernate 自己也是网上解决办法 自己的问题解决了 希望能帮助其他人 运行命令:SHOW VARIABLES LIKE 'character_set_%'; 结果如下 '...
linux 系统下mysql中文乱码问题的解决方案 1、在命令行中输入alter database 数据库名 default character set utf8; 设置字符编码方式 2、 set names utf8; 设置显示方式 3 、jdbc中url的路径后跟上?useUnicode=true...
SSH中文乱码解决方案 SSH(Secure Shell)中文乱码问题是开发中常见的问题之一。本文将总结解决SSH中文乱码问题的方法,主要涉及到spring的编码过滤器、struts.properties配置、MyEclipse工程属性设置等方面。 一...
Struts2+Spring2+Hibernate3整合的例子,含mysql数据库,解决了关于utf-8中文乱码问题
本程序是struts spring hibernate的完整环境配置, 包括: struts1.3 spring 2.0 hibernate ... BeanNameAutoProxyCreator事务处理 中文乱码解决 MD5程序加密 AJAX验证码等 希望大家喜欢 3/4
hibernate+struts实现jsp增删改查分页! hibernate实现对数据库的操作,struts实现对表单的操作! 实现了分页功能! (注:本本项目中文会出现乱码,我还没有解决!附有数据库文件!)
处理了汉字乱码,例子中有现成的数据库 开发环境:JBuilder2006+MSSQL2000 朋友们,说到hibernate持久化数据 你还一头雾水。那你不要担心,下载这个例子,直到弄懂它, 从此,你就会用hibernate进行基本操作了。...
一共四个,其中pdf 三个包,源码一个包 第一章 J2EE快速入门 1.1 J2EE概述 1.1.1 J2EE的来源 1.1.2 J2EE整体框架 1.1.3 从J2EE到JavaEE ...15.11 解决Spring的中文乱码问题 15.12 运行验证程序 15.13 小结
Hibernate连接oracle,插入中文数据乱码解决方案
一共四个,其中pdf 三个包,源码一个包 第一章 J2EE快速入门 1.1 J2EE概述 1.1.1 J2EE的来源 1.1.2 J2EE整体框架 1.1.3 从J2EE到JavaEE ...15.11 解决Spring的中文乱码问题 15.12 运行验证程序 15.13 小结
本程序是struts spring hibernate的完整环境配置, 包括: struts1.3 spring 2.0 hibernate 3.1 的... BeanNameAutoProxyCreator事务处理 中文乱码解决 MD5程序加密 AJAX验证码等 希望大家喜欢
毕竟数据是根本嘛,首先我用的是hibernate+servlet,但是在jsp页面传参到servlet的时候中文一直乱码,我尝试了好多方法,最后还是解决了。 第一,首先看清项目的编码,jsp页面的编码 第二,修改tomcat 下面的server....