zoukankan      html  css  js  c++  java
  • Hibernate的查询 HQL查询 查询某几列

    HQL 是Hibernate Query Language的简写,即 hibernate 查询语言:HQL采用面向对象的查询方式。HQL查询提供了更加丰富的和灵活的查询特性,因此Hibernate将HQL查询方式立为官方推荐的标准查询 方式,HQL查询在涵盖Criteria查询的所有功能的前提下,提供了类似标准SQL语句的查询方式,同时也提供了更加面向对象的封装。
     
    在HQL中,你可以直接From你的实体对象来进行查询:
    Java代码 
    /**
     * 简单使用
     */ 
    @SuppressWarnings("unchecked") 
    public static void test1(){ 
        Session session = HibernateSessionFactory.currentSession(); 
        String hql = "from User u"; 
        Query query = session.createQuery(hql); 
        List<User> user = query.list(); 
        System.out.println("------------SQL执行完毕---------------"); 
        for (User us : user) { 
            System.out.println(us.getName()); 
        } 

     
    类的后面可以接别名
     
    如果想单独查询某一列,可以这样使用:
    Java代码 
    /**
     * 查询某列
     */ 
    @SuppressWarnings("unchecked") 
    public static void test2(){ 
        Session session = HibernateSessionFactory.currentSession(); 
        String hql = "select name from User u"; 
        Query query = session.createQuery(hql); 
        List<String> user = query.list(); 
        System.out.println("------------SQL执行完毕---------------"); 
        for (String us : user) { 
            System.out.println(us); 
        } 

     
    如果想查询某几列的话,只是返回的内容不同了而已:
    Java代码 
    /**
     * 查询某几列
     */ 
    @SuppressWarnings("unchecked") 
    public static void test3(){ 
        Session session = HibernateSessionFactory.currentSession(); 
        String hql = "select id,name from User u"; 
        Query query = session.createQuery(hql); 
        List user = query.list(); 
        System.out.println("------------SQL执行完毕---------------"); 
        for(Object obj : user){ 
            Object[] arrObj = (Object[])obj; 
            System.out.println(arrObj[0] + "/t-->/t" + arrObj[1]); 
        } 
    }

  • 相关阅读:
    [转]开源游戏AI引擎列表与游戏中的人工智能
    [转]刨根问底!曲面细分技术到底是个啥?
    [转]link time code generation
    [转]PythonQt
    [转]Free Game Development Libraries
    Java虚拟机(二):垃圾回收算法 时间
    Java虚拟机(一):JVM的运行机制 时间
    Java虚拟机(四):常用JVM配置参数 时间
    Java虚拟机(三):垃圾收集器 时间
    mov offset和lea的区别
  • 原文地址:https://www.cnblogs.com/zhwl/p/3208624.html
Copyright © 2011-2022 走看看