Hibernate的查询 HQL查询 查询某几列

    添加时间:2013-7-23 点击量:

    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 = 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 = name 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 = id,name 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]); 
        } 
    }

    原来,再大的房子,再大的床,没有相爱的人陪伴,都只是冰冷的物质。而如果身边有爱人陪伴,即使房子小,床小,也觉得无关紧要,因为这些物质上面有了爱的温度,成了家的元素。—— 何珞《婚房》#书摘#
    分享到: