• HQL整理


    1. 查询整个映射对象所有字段

    Java代码 复制代码
    1. //直接from查询出来的是一个映射对象,即:查询整个映射对象所有字段      
    2.         String hql = "from Users";      
    3.         Query query = session.createQuery(hql);      
    4.               
    5.         List<Users> users = query.list();      
    6.         for(Users user : users){      
    7.             System.out.println(user.getName() + " : " + user.getPasswd() + " : " + user.getId());      
    8.         }      
    9.      
    10.  输出结果为:      
    11. name1 : password1 : 1     
    12. name2 : password2 : 2     
    13. name3 : password3 : 3    
    [java] view plaincopy
     
    1. //直接from查询出来的是一个映射对象,即:查询整个映射对象所有字段     
    2.         String hql = "from Users";     
    3.         Query query = session.createQuery(hql);     
    4.              
    5.         List<Users> users = query.list();     
    6.         for(Users user : users){     
    7.             System.out.println(user.getName() + " : " + user.getPasswd() + " : " + user.getId());     
    8.         }     
    9.     
    10.  输出结果为:     
    11. name1 : password1 : 1    
    12. name2 : password2 : 2    
    13. name3 : password3 : 3    



    2.查询单个字段 

    Java代码 复制代码
    1. //查询单个字段      
    2.         String hql = " select name from Users";      
    3.         Query query = session.createQuery(hql);      
    4.               
    5.         List<String> list = query.list();      
    6.         for(String str : list){      
    7.             System.out.println(str);      
    8.         }      
    9. 输出结果为:      
    10. name1      
    11. name2      
    12. name3    
    [java] view plaincopy
     
    1. //查询单个字段     
    2.         String hql = " select name from Users";     
    3.         Query query = session.createQuery(hql);     
    4.              
    5.         List<String> list = query.list();     
    6.         for(String str : list){     
    7.             System.out.println(str);     
    8.         }     
    9. 输出结果为:     
    10. name1     
    11. name2     
    12. name3    



    3.查询其中几个字段 
     

    Java代码 复制代码
    1. //查询其中几个字段      
    2.         String hql = " select name,passwd from Users";      
    3.         Query query = session.createQuery(hql);      
    4.         //默认查询出来的list里存放的是一个Object数组      
    5.         List<Object[]> list = query.list();      
    6.         for(Object[] object : list){      
    7.             String name = (String)object[0];      
    8.             String passwd = (String)object[1];      
    9.                   
    10.             System.out.println(name + " : " + passwd);      
    11.         }      
    12. 输出结果为:      
    13. name1 : password1      
    14. name2 : password2      
    15. name3 : password3    
    [java] view plaincopy
     
    1. //查询其中几个字段     
    2.         String hql = " select name,passwd from Users";     
    3.         Query query = session.createQuery(hql);     
    4.         //默认查询出来的list里存放的是一个Object数组     
    5.         List<Object[]> list = query.list();     
    6.         for(Object[] object : list){     
    7.             String name = (String)object[0];     
    8.             String passwd = (String)object[1];     
    9.                  
    10.             System.out.println(name + " : " + passwd);     
    11.         }     
    12. 输出结果为:     
    13. name1 : password1     
    14. name2 : password2     
    15. name3 : password3    



    4.修改默认查询结果(query.list())不以Object[]数组形式返回,以List形式返回

    Java代码 复制代码

    //查询其中几个字段,添加new list(),注意list里的l是小写的。也不需要导入包,这样通过query.list()出来的list里存放的不再是默认的Object数组了,而是List集合了   
            String hql = " select new list(name,passwd) from Users";   
            Query query = session.createQuery(hql);   
            //默认查询出来的list里存放的是一个Object数组,但是在这里list里存放的不再是默认的Object数组了,而是List集合了   
            List<List> list = query.list();   
            for(List user : list){   
                String name = (String)user.get(0);   
                String passwd = (String)user.get(1);   
                   
                System.out.println(name + " : " + passwd);   
            }   
            /**  
            输出结果为:  
             name1 : password1  
            name2 : password2  
            name3 : password3  
             */ 
  • 相关阅读:
    elasticsearch 基础 —— 集群原理
    剑指 offer set 10 栈的压入、弹出序列
    剑指 offer set 9 包含min函数的栈
    剑指 offer set 8 树的子结构
    剑指 offer set 7 调整数组顺序使奇数位于偶数前面
    剑指 offer set 6 打印从 1 到 N 的所有数
    剑指 offer set 5 二进制中 1 的个数
    剑指 offer set 4 矩形覆盖
    剑指 offer set 3 旋转数组的最小数字
    剑指 offer set 2 从头到尾打印链表
  • 原文地址:https://www.cnblogs.com/cha1r/p/3503022.html
Copyright © 2020-2023  润新知