`
jinh1005
  • 浏览: 2499 次
  • 性别: Icon_minigender_1
  • 来自: 上海
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

hibernate常用语句

    博客分类:
  • J2EE
阅读更多

----------------------------------------------------------------------
HQL(Hibernate Query Language)是面向对象的查询语言

1 按照位置绑定

  Query query = session.createQuery("from Customer c where c.username = ?");
  query.setString(0, "name1");
  Customer customer  = (Customer)query.uniqueResult();
  //Customer customer  = (Customer)query.setMaxResults(1).uniqueResult();
  System.out.println(customer.getUsername());
 
2
  Iterator<Users> it= session.createQuery(" FROM Users WHERE username=? AND age=?").setString(0, "hujin").setInteger(1, 25).list().iterator();
  while(it.hasNext())
{
Users user = it.next();
System.out.println("用户:"+user.getUsername()+"  密码:"+user.getPassword());
}
3
   List result=session.createQuery("……").setString("customerName","Tom").setInteger("customerAge",21).list();
  

----------------------------------------------------------------------  

QBC检索方式

1   //创建一个Criteria对象
     Criteria criteria=session.createCriteria(Customer.class);
    
     //设定查询条件,然后把查询条件加入到Criteria中
     Criterion criterion1= Expression.like("name", "T%") ;
     Criterion criterion2= Expression.eq("age", new Integer(21)) ;
    
     criteria=criteria.add(criterion1);
     criteria=criteria.add(criterion2);
    
     //执行查询语句,返回查询结果
     List result=criteria.list();
2   
    List result=session.createCriteria(Customer.class) .add(Expression.like("name", "T%").add(Expression.eq("age", new Integer(21)).list();

    
    
3  Criteria crit = sess.createCriteria(Cat.class);              
    crit.setMaxResults(50);
    List cats = crit.list();   




---------------------------------------------------------------------
        对于集合遍历的问题
       
        1 如果集合中是对象,可以如下打印出来,如:
         
          Query query = (Query)session.createQuery("from Customer");
          List list = query.list();
         
          for (int i = 0; i < list.size(); i++)
          {
             Customer c = (Customer)list.get(i);
             System.out.println(c.getId()+"  "+c.getUsername());
          }

        2 如果集合中为数组,可以如下显示出来:
        
          Query query = (Query)session.createQuery("select id,username from Customer");
          List list = query.list();
        
          for (int i = 0; i < list.size(); i++)
            {
                Object[] o = (Object[])list.get(i);
                System.out.println(o[0]+"   "+o[1]);
            }


    
    
----------------------------------------------------------------------
    
     分页查询
    
     1 采用HQL检索方式
    
      Query query = session.createQuery("from Customer c order by c.name asc");
      query.setFirstResult(0);
      query.setMaxResults(10);
      List result = query.list();
     
     2 采用QBC检索方式
    
     Criteria criteria = session.createCriteria(Customer.class);
     criteria.addOrder(Order.asc("name"));
     criteria.setFirstResult(0);
     criteria.setMaxResults(10);
     List result = criteria.list();

       

     
     
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
分享到:
评论

相关推荐

    Hibernate常用查询语句

    Hibernate常用查询语句.doc

    hibernate常用方法集合

    Criteria API提供了一种更面向对象的方式来构建查询,无需编写字符串查询语句,更易于代码维护。 7. **缓存管理** Hibernate支持一级缓存(Session级别的)和二级缓存(SessionFactory级别的)。一级缓存自动管理...

    Hibernate常用jar包集合

    以下是对标题、描述中提到的Hibernate常用jar包的详细解释: 1. **antlr-2.7.6**: ANTLR(ANother Tool for Language Recognition)是一个强大的解析器生成器,用于读取、处理、执行或翻译结构化文本或二进制文件。...

    hibernate 常用jar 包

    下面我们将详细探讨Hibernate常用JAR包及其作用。 1. **hibernate-core.jar**:这是Hibernate的核心库,包含了主要的ORM功能,包括实体管理、持久化操作、事务管理和查询服务。它提供了对Hibernate Session和...

    hibernate里面常用jar包

    以上就是关于Hibernate常用jar包的一些介绍,每个库都有其独特的功能,共同构成了Hibernate的强大ORM框架。理解并熟练掌握这些库的用途,对于有效地利用Hibernate进行开发至关重要。在实际项目中,开发者还需要根据...

    Hibernate常用包及XML

    4. **org.hibernate.dialect**:Hibernate支持多种数据库,这个包定义了各种数据库的方言(Dialect),使得Hibernate可以生成符合特定数据库语法的SQL语句。例如,MySQLDialect对应MySQL,Oracle10gDialect对应...

    Hibernate常用jar包

    《Hibernate常用jar包详解》 Hibernate,作为Java领域中的一款著名对象关系映射(ORM)框架,极大地简化了数据库操作,使得开发者可以更加专注于业务逻辑的实现,而非底层的SQL语句编写。为了能顺利使用Hibernate,...

    hibernate常用的jar

    以下是对"hibernate常用的jar"的详细说明: 1. **Hibernate核心库**:`hibernate-core.jar` - 这是Hibernate的核心组件,包含了ORM的主要功能,如实体管理、会话管理、查询语言(HQL)和Criteria API等。 2. **JPA...

    hibernate常用包(包含数据库)

    标题中的“hibernate常用包(包含数据库)”指的是Hibernate框架的基础组件,这些组件是进行JavaWeb开发中数据持久化操作的关键。Hibernate是一个强大的对象关系映射(ORM)框架,它简化了Java应用程序与数据库之间...

    ssh-hibernate常用包.rar

    本压缩包“ssh-hibernate常用包.rar”包含了学习Hibernate5时所需的基础导入jar包,特别适合初学者进行数据库管理与Java对象的映射学习。 1. **Hibernate5**: Hibernate 5是ORM(Object-Relational Mapping)框架的...

    Struts +Hibernate 常用开发驱动包

    提供的"Struts+Hibernate常用驱动整理"压缩包可能包含以下组件: - Struts相关的jar包:如struts2-core、struts2-convention、struts2-json-plugin等,用于核心功能、约定优于配置的加载和JSON支持。 - Hibernate的...

    hibernate 3.5.5 常用jar包

    在这个“hibernate 3.5.5 常用jar包”中,包含了运行和开发基于Hibernate 3.5.5应用所需的核心库。以下是关于Hibernate 3.5.5及其相关jar包的关键知识点: 1. **对象关系映射(ORM)**:ORM是将数据库中的表映射为...

    struts2+hibernate常用jar包.rar

    这个压缩包包含了一些常用的jar包,用于支持Struts2和Hibernate框架的运行。下面我们将逐一介绍这些jar包的功能和作用。 1. **hibernate-core-4.2.4.Final.jar**:这是Hibernate的核心库,包含了ORM(对象关系映射...

    常用 Hibernate 映射配置说明.doc

    ### 常用Hibernate映射配置详解 #### 1. hibernate-mapping节点解析 `hibernate-mapping`节点是Hibernate映射文件中的顶级节点,用于定义一系列配置选项,控制整个映射文件的行为和映射规则。这些配置包括数据库...

    hibernate通用查询语句生成类

    这是一个java代码包,里面提供了一个核心类,专门负责生成 hibernate查询语句(常用的,并非所有,现在能力有限),其他都是一些辅助类,自我感觉还可以。主要是为了减轻以后的项目开发负担,可以省去拼接hql查询语句的...

    hibernate常用lib

    这个压缩包文件"hibernate常用lib"包含了开发Hibernate应用所需的常用库文件,总计16个。这些库文件通常包括Hibernate的核心库、数据库驱动、依赖的第三方库等,是构建基于Hibernate的应用程序的基础。 在Hibernate...

    hibernate最常用的jar包下载

    Hibernate是一个强大的Java持久化框架,它使得开发人员可以更加便捷地操作数据库,无需直接编写SQL语句。在Java应用程序中,Hibernate提供了对象关系映射(ORM)功能,将数据库中的表映射为Java对象,从而简化了数据...

    hibernate常用jar

    在“hibernate常用jar”中,包含了一系列的Hibernate库文件,这些文件是开发基于Hibernate的应用程序所必需的。下面将详细介绍这些jar文件以及它们在Hibernate框架中的作用: 1. **hibernate-core.jar**:这是...

Global site tag (gtag.js) - Google Analytics