`
dengquanhao
  • 浏览: 26257 次
  • 性别: Icon_minigender_1
  • 来自: 重庆
社区版块
存档分类
最新评论

HQL查询中的中文参数解决之道

阅读更多

在Hibernate配置文件中加入下面代码:
<property name="hibernate.query.factory_class">org.hibernate.hql.classic.ClassicQueryTranslatorFactory</property>
如果是Spring+Hibernate开发,则在定义Hibernate配置属性时候加入:
<property name="hibernateProperties">
  <props>
    <prop key="hibernate.query.factory_class">org.hibernate.hql.classic.ClassicQueryTranslatorFactory</prop>
</props>
</property>

设定数据库连接方式是UTF-8。例如连接MYSQL时配置URL如下:这是在hibernate.cfg.xml文件里设置:jdbc:mysql://localhost:3306/test?useUnicode=true&amp;characterEncoding=UTF-8或加两个属性
<property name="connection.useUnicode">true</property>
<property name="connection.characterEncoding">UTF-8</property>
注意,上述写法是hibernate的hibernate.cfg.xml写法.最后要注意的是在tomcat中&amp;要写成&即可。
分享到:
评论
1 楼 dengquanhao 2009-05-13  
  这是我转载的,其实要解决hql查询时的中文参数问题,只要修改hibernate.cfg.xml,添加两个属性,<property name="connection.useUnicode">true</property>
<property name="connection.characterEncoding">UTF-8</property>,或者连接数据库时,用jdbc:mysql://localhost:3306/test?useUnicode=true&amp;characterEncoding=UTF-8即可,如文中所说。
  至于文中前半部份的介绍大可不比,因为不是每个人的查询都用的是 org.hibernate.hql.classic.ClassicQueryTranslatorFactory(经典查询)。

相关推荐

    关于Hibernate3中文查询出错问题的解决

    - 在编写HQL或Criteria查询时,如果涉及到中文字符串,确保字符串已经正确地转换为相应字符集的字节数组,再传递给Hibernate执行。 5. **IDE与项目配置**: - 检查IDE(如Eclipse、IntelliJ IDEA)的工作空间和...

    hibernate312中文参考文档

    通过这份中文参考文档,开发者可以全面了解Hibernate3.12的功能,解决在开发过程中遇到的问题,并掌握如何高效地使用Hibernate进行数据持久化操作。对于Java开发者,尤其是初次接触Hibernate的人来说,这是一份极具...

    解决J2EE开发中乱码问题

    3. Hibernate:在执行包含中文的HQL查询时,例如`from Test t where t.name like '%测试%'`,查询结果可能会显示为乱码,如`'%???%'`。 解决这些问题的关键在于统一编码标准,确保整个项目的编码一致性。以下是一些...

    hibernate-distribution中文帮助手册

    1. **Hibernate概述**:介绍Hibernate的基本概念、架构和设计理念,解释为什么在Java应用中选择Hibernate作为ORM解决方案。 2. **安装与配置**:详述如何在项目中引入Hibernate库,设置配置文件(hibernate.cfg.xml...

    大数据之Hive官方文档简要翻译(中文文档)

    【大数据之Hive官方文档简要翻译(中文文档)】 Hive是一款基于Hadoop的数据仓库工具,它允许用户使用SQL-like的语言(HQL)来查询、管理和处理存储在Hadoop文件系统(HDFS)上的大规模数据集。在Hive的核心组件中...

    hibernate存取汉字小程序

    此外,对于数据库的操作,可以使用HQL(Hibernate Query Language)或Criteria API来进行更复杂的查询,它们都是Hibernate提供的面向对象的查询方式,可以方便地处理中文查询条件。 总之,【hibernate存取汉字小...

    hibernate中文帮助文档

    2. **配置文件**:在Hibernate中文帮助文档中,会详细介绍`hibernate.cfg.xml`配置文件的结构和参数,包括数据库连接信息、方言设置、缓存配置等,这些都是初始化Hibernate时必须的配置。 3. **实体类与表映射**:...

    hibernate3.2-中文帮助文档

    这个中文帮助文档对于深入理解Hibernate框架及其在实际开发中的应用至关重要,无论你是初学者还是资深开发者,都能从中找到解决问题的答案。通过学习和实践,你可以熟练掌握Hibernate,从而更高效地进行Java数据库...

    iReport中文教程(目前最全的)

    iReport支持Hibernate的HQL查询,使得能够访问Hibernate支持的数据源。 #### 9.7 如何实现一个新的JR数据源 用户可以自己实现一个新的数据源来满足特定需求。 ### 十、国际化 #### 10.1 资源文件 使用资源文件可以...

    Hibernate中文帮助文档

    - Hibernate是Java世界中最为流行的数据持久化框架之一,由Jboss组织维护。 - ORM(Object-Relational Mapping)技术解决了对象与关系数据库之间的数据转换问题,避免了直接使用SQL进行数据库操作的复杂性。 2. *...

    hibernate中文参考文档

    - 分页查询:通过设置firstResult和maxResults参数实现。 - 自定义SQL:通过SQLInsert、SQLUpdate、SQLDelete等接口自定义DML操作。 九、最佳实践 1. 避免过多的HQL查询,尽可能使用 Criteria API 或 JPA 的 ...

    hibernate中文开发指南

    Criteria API 提供了一种更动态的查询方式,开发者可以通过构建Criteria对象来构造查询条件,无需预先编写HQL或SQL,具有更高的灵活性。 ### 8. 注解配置 除了使用XML文件进行映射,Hibernate还支持使用Java注解来...

    Hibernate中文文档

    - **HQL**:类似于 SQL 的面向对象查询语言,支持对象图的导航查询。 - **Criteria API**:提供了一种基于标准的查询方式,适用于复杂的查询条件组合。 ##### 3.4 缓存机制 为了提高应用程序性能,Hibernate 内置...

    Hibernate开发指南

    4.1 HQL(Hibernate Query Language):介绍Hibernate特有的SQL方言,如何编写HQL查询,以及使用命名参数和占位符。 4.2 Criteria查询:学习Criteria API,一种更面向对象的查询方式,支持动态构建查询条件。 4.3 ...

    DDLTask.rar

    本文将深入探讨如何解决Hive中文注释出现乱码的问题,以及与之相关的编译后文件处理技巧。 Hive是建立在Hadoop上的数据仓库工具,它允许用户使用SQL语法进行数据查询和分析。然而,在处理包含中文注释的Hive脚本时...

    Hibernate3.2官方中文参考手册.pdf

    - **Query**: 提供了执行HQL(Hibernate查询语言)和SQL查询的能力。 - **Criteria API**: 一种基于API的方式,允许开发人员构建动态查询。 - **Mapping**: Hibernate的核心特性之一,它定义了Java对象和数据库表...

    hibernate_reference中文文档.pdf

    - **3.4.5 查询语言中的替换**:描述如何在 HQL 查询中使用占位符。 - **3.4.6 Hibernate 的统计 (statistics) 机制**:讲解如何收集和分析 Hibernate 运行时的统计信息。 - **3.5 日志**:介绍如何配置 Hibernate...

Global site tag (gtag.js) - Google Analytics