`
- 浏览:
127753 次
- 性别:
- 来自:
中国安徽
-
java 代码
- 原本我的写法:
- 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)可以支持输入中文,但没法解释批量更新语句了。
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
【Hibernate Criteria 用法详解】 Hibernate Criteria API 是一种面向对象的查询方式,它提供了一种比HQL(Hibernate Query Language)更为简洁且直观的查询手段。通过Criteria API,开发者可以构建复杂的查询条件...
Hibernate 中 Criteria 的用法 Hibernate 中 Criteria 的用法是 Hibernate 框架中的一种查询机制,它提供了灵活的查询方式,可以根据不同的条件进行查询。Criteria 查询机制主要包括 QBE(Query By Example)、QBC...
以下是对Criteria用法的详细说明: 1. **创建Criteria实例**: 要开始使用Criteria,你需要在Hibernate的Session中调用`createCriteria()`方法,传入你想查询的实体类的Class对象。例如,如果你要查询Person实体,...
QBE是Criteria API的一个简单用法,通过一个实体对象作为模板来匹配数据库中的记录。例如,在`Student`类的上下文中,如果有一个名为`s`的学生对象,其`giftortoy`字段被设置为"2",那么调用`cri.add(Example....
通过这个项目,你不仅可以了解Hibernate的基本用法,还能深入理解如何在实际项目中应用这些知识,提升数据库操作的效率和代码的可维护性。在学习过程中,建议结合具体代码逐个实践,加深理解和记忆。
### Hibernate中Criteria的完整用法 #### 一、概述 在Java开发中,尤其是在使用ORM框架Hibernate时,Criteria API提供了一种非常灵活的方式来构建复杂的查询。本文将详细介绍Hibernate中的Criteria API及其子类...
- 掌握Hibernate ORM的基本用法。 - 分析`orm`模块,了解实体与索引之间的映射关系。 - 研究`engine`和`backend`,理解索引的生命周期管理和查询执行流程。 - 实践编写示例应用,调试源码以加深理解。 总的来说,...
(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, ...
=)、逻辑操作符(AND、OR、NOT)以及IN、BETWEEN、LIKE等。 5. **函数与运算符** - 支持数学函数(如SUM、AVG、COUNT、MAX、MIN)和字符串函数(如UPPER、LOWER、SUBSTRING)。 - 使用AS进行别名定义,提高代码...
Hibernate Query Language(HQL)是Hibernate框架中...通过文档《HQL语法入门学习.doc》和《HQL语句大全.txt》,可以系统地了解和掌握HQL的各种用法,而《HQL》可能是实际的代码示例或进阶话题,进一步巩固理论知识。
本文将详细探讨这三种查询方式的区别与用法。 首先,Criteria查询是Hibernate提供的一种面向对象的查询方式,它通过构建对象化的查询条件来执行数据库查询。Criteria查询的优点在于其直观且可扩展性强。创建...
在Hibernate的Criteria API中,模糊查询主要通过`Restrictions.like()`方法来实现。该方法接受两个参数:字段名和包含通配符的字符串。 ##### 示例1:单字段模糊查询 ```java // 查找名字中包含“Erica”的用户 ...
Hibernate Query Language(HQL)是Hibernate官方推荐的查询语言,它是面向对象的,与SQL类似,但更加符合Java编程的思维。HQL使得开发者能够更方便地处理对象关系映射,而无需直接编写SQL语句。在使用HQL时,我们...
- `like(String propertyName, String value)`:模糊匹配。 - `in(String propertyName, Collection values)`:在指定集合内。 - `notIn(String propertyName, Collection values)`:不在指定集合内。 ### 3. 联合...
#### 三、Criteria API的基本用法 ##### 1. 创建Criteria实例 首先,需要创建一个`Criteria`实例,该实例是基于特定实体类的,例如: ```java Criteria cri = session.createCriteria(Student.class); ``` 这里...
本文将深入探讨HQL在查询映射对象及字段方面的基本用法。 1. 查询整个映射对象所有字段 在Hibernate中,我们可以通过简单的`from`关键字来查询整个映射对象的所有字段。以下是一个Java代码示例: ```java String ...