`
sunbin
  • 浏览: 349614 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

hibernate 四种查询方法

 
阅读更多

public class Test01 {

public static void main(String[] args) {

Configuration cfg=new Configuration().configure();

SessionFactory sf=cfg.buildSessionFactory();

Session session=sf.openSession();

session.beginTransaction();

 

//Group gp=new Group();

//gp.setName("java19班级");

//session.save(gp);  //id

//第一种查询方式

/**

Criteria criteria=session.createCriteria(Group.class);

criteria.add(Restrictions.or(Restrictions.like("name","%3%"), Restrictions.idEq(1)));

criteria.add(Expression.like("name","%3%")).add(Expression.idEq(2)).addOrder(Order.desc("name"));

*/

//第二种查询方式     

//Query query=session.createQuery("from Group where name like '好%' ");

 

 

//第三种  1  本地sql方式查询

//Query query=session.getNamedQuery("findByName");

 

 

//第三种  2  本地sql方式查询

String sql="SELECT l.* FROM tb_group l where l.id=? or l.name like ?";

Query query=session.createSQLQuery(sql).addEntity("l",Group.class);

 

query.setInteger(0, 1);

query.setString(1, "3%");

List<Group> ls=query.list();

for (Group gp : ls) {

System.out.println(gp.getName());

}

 

 

 

session.beginTransaction().commit();

session.close();

sf.close();

}

}

 

 

 

//////////////////////////////////

 

<sql-query name="findByName1">

     {call findByNames(?,?)}

     <!--

     DELIMITER $$   

DROP PROCEDURE IF EXISTS findByNames$$   

CREATE PROCEDURE findByNames( IN id  INT,IN namess VARCHAR(20))   

BEGIN   

  SELECT l.* FROM tb_group l WHERE l.id=id AND l.name=namess;

  

END$$   

DELIMITER ; 

     -->

      <return class="com.mwl.Group"/>

   </sql-query>

分享到:
评论

相关推荐

    hibernate多表联合查询

    在Hibernate中,可以使用以下几种方式来实现多表联合查询: - **HQL (Hibernate Query Language)** - **Criteria API** - **Native SQL** 本文将重点介绍如何使用HQL和Native SQL来实现多表联合查询。 #### 三、...

    hibernateHQL关联查询

    通过本文的介绍,我们不仅回顾了数据库表连接的基础知识,还深入了解了Hibernate HQL关联查询的实现原理及应用方法。对于开发者而言,掌握HQL关联查询不仅可以提高查询效率,还能让代码更加简洁易懂。希望本文能帮助...

    Hibernate_query查询数据表中的一个字段.

    总结,Hibernate提供多种方式查询数据表中的字段,包括HQL、Criteria API和DetachedCriteria,选择合适的方法取决于具体需求。正确理解和使用Hibernate,能够大大提高Java开发中的数据库操作效率。

    hibernate查询方法

    **Hibernate查询方法大全** Hibernate,作为Java领域中最流行的持久化框架之一,提供了多种查询数据的方法。这些方法使得开发者能够高效地从数据库中检索、更新和删除数据,无需编写大量SQL语句。本篇文章将深入...

    hibernate 三种 查询 方式 load与get的区别

    本篇文章将详细解析Hibernate中的三种主要查询方式——HQL(Hibernate Query Language)、Criteria API和Query API,并着重讨论`load()`与`get()`方法的区别。 一、HQL查询 Hibernate Query Language(HQL)是...

    hibernate实现分页查询

    完整的分页查询方法实现如下: ```java public List getPageList(int thisNumber, int sumCount, String sql) { Session session = sf.openSession(); try { Query query = session.createQuery(sql); int ...

    hibernate实现动态SQL查询

    本篇文章主要探讨如何利用Hibernate实现动态SQL查询,结合XML配置和FREEMARKER模板引擎来生成执行的SQL语句。 一、Hibernate简介 Hibernate作为一款强大的持久层框架,它简化了Java应用程序与数据库之间的交互。...

    Hibernate分页查询原理解读

    Hibernate提供了两种基本的分页查询方法: 1. **基于SQL LIMIT关键字的分页**:这种方式适用于支持LIMIT关键字的数据库,如MySQL。 2. **基于ROWNUM的分页**:这种方式主要针对Oracle等不支持LIMIT关键字的数据库。 ...

    struts+hibernate查询所有记录

    2. **HQL(Hibernate Query Language)**:这是Hibernate提供的一种查询语言,类似于SQL,但更加面向对象。通过HQL,我们可以方便地查询数据库中的记录。 3. **Struts标签库**:Struts提供了一系列自定义的JSP标签...

    hibernate自定义查询

    Hibernate支持使用`createSQLQuery`方法创建SQL查询,并返回结果集。例如: ```java Session session = sessionFactory.openSession(); SQLQuery sqlQuery = session.createSQLQuery("SELECT * FROM USER WHERE ...

    hibernate查询代码

    接下来,我们讨论 Hibernate 的四种主要查询方式: 1. **HQL(Hibernate Query Language)**: 类似于SQL,但面向对象。HQL允许你以类和属性的名称进行查询,而不是表和列。例如,如果你有一个`User`类,你可以这样...

    hibernate通用查询

    2. HQL(Hibernate Query Language):这是一种面向对象的查询语言,类似于SQL,但更贴近于Java对象。HQL可以方便地进行对象间的关联查询,支持聚合函数和子查询。 3. Query API:这是基于HQL的查询接口,提供了...

    Hibernate的四种典型例子(增删改查)

    标题:“Hibernate的四种典型例子(增删改查)” 描述:“简单明了,狠适合初学者看看” 在Java开发领域,Hibernate是一个非常流行的开源对象关系映射(Object Relational Mapping,ORM)框架,它简化了Java应用与...

    用Hibernate实现分页查询.docx

    分页查询是一种在数据量较大的情况下,为了提高用户体验和系统性能而采取的一种技术手段。它将查询结果分成若干页显示,用户可以通过翻页操作查看不同的数据集。 在进行分页查询时,通常需要指定两个重要的参数:`...

    hibernateCriteria查询

    Hibernate Criteria 查询是一种强大的对象化查询方式,它为开发者提供了一种灵活而直观的方式来构建复杂的查询逻辑。与传统的SQL查询相比,Criteria查询更加面向对象,易于理解和维护。在Hibernate框架中,Criteria...

    Hibernate HQL查询 分页查询 模糊查询.docx

    HQL(Hibernate Query Language)是一种面向对象的查询语言,它允许开发者使用类及其属性来编写查询语句,而不是传统的SQL语句。这使得开发人员能够更加专注于业务逻辑而不用深入到SQL层面。HQL支持各种复杂的查询,...

    hibernate增加和查询

    Hibernate是一个开放源代码的ORM框架,它提供了一种在Java应用程序中持久化对象到关系数据库的方式。通过使用Hibernate,开发者可以避免直接编写SQL语句,而是通过Java对象和类来操作数据库,降低了数据库操作的复杂...

    4.Hibernate-04查询以及优化策略1

    HQL(Hibernate Query Language,Hibernate 查询语言)是 Hibernate 提供的一种查询语言,它可以用于查询数据库中的数据。HQL 查询可以分为两种:一种是基于对象的查询,另一种是基于 SQL 的查询。 1.1 基于对象的 ...

    hibernate实现动态表查询的多种解决方案

    本文将详细介绍几种常见的动态表查询方法,并给出具体的代码示例。 #### 二、核心概念与技术点 1. **命名策略(NamingStrategy)**:Hibernate默认使用一种命名策略来转换实体类属性名到数据库列名。如果希望...

Global site tag (gtag.js) - Google Analytics