`
gaosililn
  • 浏览: 73036 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

ssh学习:hibernate中QBC查询

 
阅读更多

Hibernate中QBC查询

QBC:Query by Criteria 标准化查询.使用到的接口: Criteria、Critertion(条件)、Order(排序)、Projection(映射) 以及DetachedCriteria(离线)

获取Criteria对象

 

        //从session中获取Criteria接口对象
	Criteria criteria = session.createCriteria(User.class);
 设置查询的条件

 

 

//Critertion 条件查询 利用Restrictions实现
	Criterion ilike = Restrictions.ilike("name", "%");
	Criterion between = Restrictions.between("id", 1, 2);
	//添加查询的条件:下面二选一
	Criterion and = Restrictions.and(ilike,between);//可以一次添加多个
	Criteria criteria2 = criteria.add(and);
	//Criteria criteria3 = criteria.add(between).add(ilike);
 对查询进行排序:
	// order
	criteria.addOrder(org.hibernate.criterion.Order.desc("name"));
 映射查询:
// 映射 projection 常用的函数sun,avg,max,min,count等
	Criteria criteria4 = criteria.setProjection(Projections.count("id"));
 离线查询:

 

 

// 离线查询 可以随意添加到任意一个session当中
	DetachedCriteria detachedCriteria = DetachedCriteria.forClass(User.class);
	// 将离线查询加载到需要加载的session上
	Criteria criteria1 = detachedCriteria.getExecutableCriteria(session);
 
分享到:
评论

相关推荐

    SSH培训纲要--培训的课程目标,课程大纲,课程安排

    掌握HQL和QBC查询语言,以及Log4j日志系统。对于Hibernate的缓存机制,包括一级缓存和二级缓存也需要有深入的理解。 课程的安排会按照从基础知识到实践操作的顺序进行,确保学员从理论到实践逐步掌握SSH框架的使用...

    struts+hibernate+Spring面试题

    10. 查询方式:HQL(Hibernate Query Language)、Criteria API和QBC(Query By Example)。 11. 优化Hibernate:合理设计对象关系模型,避免N+1查询,启用缓存,合理使用批处理,优化HQL语句等。 接下来,关于...

    struts+hibernate+spring框架增删改查

    - **HQL和QBC**:Hibernate提供了面向对象的查询语言HQL和Query By Criteria,可以避免直接写SQL,提高代码的可读性和可移植性。 3. Spring3: - **依赖注入**:Spring通过IoC(Inversion of Control)容器管理...

    SSH框架,详细版!

    SSH框架,全称为Spring、Struts和Hibernate,是Java开发中常用的三大开源框架,用于构建企业级Web应用程序。这个框架组合能够有效地解耦应用程序的不同部分,提高开发效率和代码质量。 **Spring框架**是核心,提供...

    ssh框架面试题

    SSH框架,全称为Struts+Spring+Hibernate,是Java Web开发中常见的三层架构组合,用于构建高效、可扩展的企业级应用。以下是对标题和描述中所提及知识点的详细解释: 1. **BeanFactory**:BeanFactory是Spring框架...

    Hibernate开发资料

    5. **CRUD操作**:详细说明如何使用Hibernate进行创建(Create)、读取(Read)、更新(Update)和删除(Delete)操作,包括Criteria、HQL(Hibernate Query Language)和QBC(Query By Criteria)等查询方式。...

    ssh 框架整合总结

    SSH 框架整合是Java开发中常见的技术栈,主要包括Spring、Struts和Hibernate三个组件。这个框架组合提供了强大的企业级应用开发能力,包括模型-视图-控制器(MVC)设计模式的实现、数据持久化的高效处理以及业务逻辑...

    Hibernate详解2

    3. **HQL检索**:Hibernate查询语言,是一种面向对象的查询方式,类似于SQL,提供了丰富的查询功能,如条件、投影、分页、连接、分组等。 4. **QBC检索**:Query By Criteria,通过API构建查询条件,更面向对象,...

    常见hibernate面试题

    - QBC(Query By Criteria):基于Java API的查询方式,通过Criteria对象构建查询条件。 - 本地SQL:直接使用SQL语句进行查询。 2. **load()与get()的区别** - `load()`方法:返回的是对象的代理,即使数据库中...

    SSH框架整合流程

    Hibernate的HQL(Hibernate Query Language)和QBC(Query By Criteria)进一步简化了数据库查询,使得开发者可以以面向对象的方式操作数据库。 SSH的整合目的是让Spring管理Struts2的Action创建,使得Action的生命...

    SSH框架面试题目及答案

    以上就是SSH框架面试中可能会涉及的主要知识点,包括Hibernate的工作原理、延迟加载、类间关系映射、缓存机制、查询方式以及优化策略,以及Struts的工作流程和使用目的。这些知识是Java Web开发者必备的基础技能。

    ssh面试宝典

    10. **Hibernate在SSH开发模式中的角色**: Hibernate作为数据持久层框架,负责将Java对象映射到数据库表,实现对象关系映射(ORM)。 11. **Hibernate的抓取策略**: 抓取策略是指如何在查询时获取关联的对象,...

    ssh分页

    物理分页是SSH框架中常用的方法,它利用Hibernate的查询功能实现。每次只查询数据库中的一小部分数据,即一页的数据。分页参数包括当前页码和每页显示的记录数。在执行查询前,需要先计算出总记录数,然后根据这些...

    ssh java web project

    3. **HQL和QBC**:提供面向对象的查询语言,避免直接写SQL。 4. **缓存机制**:提高性能,减少数据库访问。 **整合SSH** 整合SSH通常涉及以下步骤: 1. **配置Struts2-Spring插件**:使Struts2能够识别Spring管理...

    Struts2 Hibernate Spring开发jar文件

    3. **HQL和QBC**:Hibernate查询语言(HQL)和Query By Criteria提供面向对象的查询方式,避免直接编写SQL。 4. **缓存机制**:支持一级缓存和二级缓存,提高性能和数据一致性。 **Spring** 是一个全面的企业级应用...

    SSH校内网项目实战课程

    - 查询语言:提供了HQL和QBC两种查询方式,便于执行复杂的数据库操作。 #### 三、项目环境搭建 - **开发工具**:Eclipse、IntelliJ IDEA等主流IDE均可选择。 - **服务器**:Tomcat 7.x 或更高版本。 - **数据库**...

    struts+hibernate,spring面试题

    Struts、Hibernate和Spring(SSH)是Java Web开发中经典的三大框架,它们分别负责MVC模式中的模型(Model)、视图(View)和控制器(Controller)部分。在面试中,了解这些框架的核心概念和实际应用是非常重要的。 ...

    JDBC基础和SSH编码.rar

    - Criteria、HQL和QBC:三种查询方式,灵活地检索数据。 - 第三方缓存集成:如 EhCache,提高数据访问效率。 在实际开发中,SSH框架结合使用,Spring作为核心容器,管理Struts和Hibernate的实例。Struts处理HTTP...

    SSH面试题

    - **QBC(Query By Criteria)条件查询**: 使用Criteria API进行条件构建和查询。 #### 六、Hibernate中的Load与Get方法区别 **问题:** 解释Hibernate中的Load与Get方法的区别。 - **Load方法**: 假设指定ID的...

    J2EE期末复习(含答案).pdf

    7、使用 Hibernate 的 QBC 查询,要使用 SQL 中的类似 select count(*) from tablename 方法 求出记录数,必须使用哪一个类? 使用 Hibernate 的 QBC 查询,可以使用 Projections 类来求出记录数。 8、Struts2 中...

Global site tag (gtag.js) - Google Analytics