`
alfredgao
  • 浏览: 137956 次
  • 性别: Icon_minigender_1
  • 来自: 青岛
社区版块
存档分类
最新评论

Hibernate的Like用法

阅读更多

原本我的写法:
Query repeatClientQuery=querysession.createQuery(
"from ClientInfo as a "+"where a.client_name like
:name" );
repeatClientQuery.setParameter("name",clientname);
查询无结果.LIKE 'Mc%' 将搜索以字母 Mc 开头的所有字符串(如 McBadden)。
LIKE '%inger' 将搜索以字母 inger 结尾的所有字符串(如 Ringer、Stringer)。LIKE '%en%' 将搜索在任何位置包含字母 en 的所有字符串
(如 Bennet、Green、McBadden)。
LIKE '_heryl' 将搜索以字母 heryl 结尾的所有六个字母的名称
(如 Cheryl、Sheryl)。LIKE '[CK]ars[eo]n'
将搜索下列字符串:
Carsen、Karsen、Carson 和 Karson(如 Carson)。LIKE '[M-Z]inger'
将搜索以字符串 inger 结尾、以从M到Z的任何单个字母开头的所有名称如 。
LIKE 'M[^c]%' 将搜索以字母 M 开头,并且第二个字母不是 c 的所有名称
(如 MacFeather)。
直接写String sql = "from ClientInfo as a where a.client_name like '%"+ clientname+"%'");
Query repeatClientQuery=querysession.createQuery(sql);
成功.但是却不能查询中文,假如clientname是客户1名字的话,那么将查不到结构,
解决办法:1.用占位符:
Query query = session
.createQuery("select count(*)
from Privilege p where p.name like ?");
query.setString(0, "%" + name + "%");//
注意这里不能写成setString(0," '%" + name + "%' ";
否则查不出来结果,不能加‘单引号2.修改查询编译器:
Hibernate3.0 采用新的基于ANTLR的HQL/SQL查询翻译器,
Hibernate的配置文件中,hibernate.query.factory_class
属性用来选择查询翻译器。
(1)选择Hibernate3.0的查询翻译器:
hibernate.query.factory_class=
org.hibernate.hql.ast.ASTQueryTranslatorFactory
(2)选择Hibernate2.1的查询翻译器hibernate.query.factory_class=
org.hibernate.hql.classic.ClassicQueryTranslatorFactory
为了使用3.0的批量更新和删除功能,只能选择
(1)否则不能解释批量更新的语句,当使用的时候出现了不支持条件输入中文的情况。
选择
(2)可以支持输入中文,但没法解释批量更新语句了。

分享到:
评论

相关推荐

    Hibernate Criteria用法大全.docx

    【Hibernate Criteria 用法详解】 Hibernate Criteria API 是一种面向对象的查询方式,它提供了一种比HQL(Hibernate Query Language)更为简洁且直观的查询手段。通过Criteria API,开发者可以构建复杂的查询条件...

    Hibernate中Criteria的用法

    Hibernate 中 Criteria 的用法 Hibernate 中 Criteria 的用法是 Hibernate 框架中的一种查询机制,它提供了灵活的查询方式,可以根据不同的条件进行查询。Criteria 查询机制主要包括 QBE(Query By Example)、QBC...

    Hibernate的Criteria用法

    以下是对Criteria用法的详细说明: 1. **创建Criteria实例**: 要开始使用Criteria,你需要在Hibernate的Session中调用`createCriteria()`方法,传入你想查询的实体类的Class对象。例如,如果你要查询Person实体,...

    Hibernate中Criteria的完整用法

    QBE是Criteria API的一个简单用法,通过一个实体对象作为模板来匹配数据库中的记录。例如,在`Student`类的上下文中,如果有一个名为`s`的学生对象,其`giftortoy`字段被设置为"2",那么调用`cri.add(Example....

    hibernate_first_new项目源码

    通过这个项目,你不仅可以了解Hibernate的基本用法,还能深入理解如何在实际项目中应用这些知识,提升数据库操作的效率和代码的可维护性。在学习过程中,建议结合具体代码逐个实践,加深理解和记忆。

    Hibernate中Criteria的完整用法.docx

    ### Hibernate中Criteria的完整用法 #### 一、概述 在Java开发中,尤其是在使用ORM框架Hibernate时,Criteria API提供了一种非常灵活的方式来构建复杂的查询。本文将详细介绍Hibernate中的Criteria API及其子类...

    hibernate search源码

    - 掌握Hibernate ORM的基本用法。 - 分析`orm`模块,了解实体与索引之间的映射关系。 - 研究`engine`和`backend`,理解索引的生命周期管理和查询执行流程。 - 实践编写示例应用,调试源码以加深理解。 总的来说,...

    Hibernate中文API大全

    (A mapping like this allows you to map extra columns of a many-to-many association table to the composite element class.) 接下来的的例子是从Order到Item的一个多对多的关联关系, 关联属性是 purchaseDate, ...

    Hibernate-HQL-查询-Query资料

    =)、逻辑操作符(AND、OR、NOT)以及IN、BETWEEN、LIKE等。 5. **函数与运算符** - 支持数学函数(如SUM、AVG、COUNT、MAX、MIN)和字符串函数(如UPPER、LOWER、SUBSTRING)。 - 使用AS进行别名定义,提高代码...

    HQL(Hibernate Query Language):

    Hibernate Query Language(HQL)是Hibernate框架中...通过文档《HQL语法入门学习.doc》和《HQL语句大全.txt》,可以系统地了解和掌握HQL的各种用法,而《HQL》可能是实际的代码示例或进阶话题,进一步巩固理论知识。

    Hibernate三大类查询总结.doc

    本文将详细探讨这三种查询方式的区别与用法。 首先,Criteria查询是Hibernate提供的一种面向对象的查询方式,它通过构建对象化的查询条件来执行数据库查询。Criteria查询的优点在于其直观且可扩展性强。创建...

    Hibernate-Criteria 模糊查询

    在Hibernate的Criteria API中,模糊查询主要通过`Restrictions.like()`方法来实现。该方法接受两个参数:字段名和包含通配符的字符串。 ##### 示例1:单字段模糊查询 ```java // 查找名字中包含“Erica”的用户 ...

    Hibernate Query Language基础使用详解

    Hibernate Query Language(HQL)是Hibernate官方推荐的查询语言,它是面向对象的,与SQL类似,但更加符合Java编程的思维。HQL使得开发者能够更方便地处理对象关系映射,而无需直接编写SQL语句。在使用HQL时,我们...

    Hibernate Criteria 完全使用

    - `like(String propertyName, String value)`:模糊匹配。 - `in(String propertyName, Collection values)`:在指定集合内。 - `notIn(String propertyName, Collection values)`:不在指定集合内。 ### 3. 联合...

    java hibernate Criteria

    #### 三、Criteria API的基本用法 ##### 1. 创建Criteria实例 首先,需要创建一个`Criteria`实例,该实例是基于特定实体类的,例如: ```java Criteria cri = session.createCriteria(Student.class); ``` 这里...

    Hibernate HQL精华

    本文将深入探讨HQL在查询映射对象及字段方面的基本用法。 1. 查询整个映射对象所有字段 在Hibernate中,我们可以通过简单的`from`关键字来查询整个映射对象的所有字段。以下是一个Java代码示例: ```java String ...

Global site tag (gtag.js) - Google Analytics