• hibernated的HQL查询操作总结


    只粘贴部分关键代码

    1.简单查询

              Session session = hibernateUtils.getCurrentSession();
              Transaction transaction =  session.beginTransaction();
              Query query = session.createQuery("from Customer");
              List<Customer> list = query.list();
              for(Customer customer : list) {
                 System.out.println(customer);
              }
              transaction.commit();

    2.条件查询

     Session session = hibernateUtils.getCurrentSession();
                  Transaction transaction =  session.beginTransaction();
    //            Query query = session.createQuery("from Customer where cust_name = ?");
                  Query query = session.createQuery("from Customer where cust_name = ? and cust_source like ?");
                  query.setParameter(0, "xxx");
                  query.setParameter(1, "a%");
                  List<Customer> list = query.list();
                  for(Customer customer : list) {
                     System.out.println(customer);
                  }
                  transaction.commit();

    3.投影查询

     Session session = hibernateUtils.getCurrentSession();
                  Transaction transaction =  session.beginTransaction();
    //              Query query = session.createQuery("select c.cust_name from Customer c");
    //              Query query = session.createQuery("select c.cust_name,c.cust_source from Customer c");
                  Query query = session.createQuery("select new Customer(cust_name,cust_source) from Customer c");
    //              List<Object[]> list = query.list();
                  List<Customer> list = query.list();
                  for(Customer customer : list) {
                     System.out.println(customer);
                  }
                  transaction.commit();
        

    4.分页查询

                 Session session = hibernateUtils.getCurrentSession();
                  Transaction transaction =  session.beginTransaction();          
                  Query query = session.createQuery(" from LinkMan");
                  query.setFirstResult(10);//从第几条开始查,比如这句话的意思是从第十一条开始查
                  query.setMaxResults(5);
                  List<LinkMan> list = query.list();
                  for(LinkMan man : list) {
                     System.out.println(man);
                  }
                  transaction.commit();

    5.分组统计查询

                        Session session = hibernateUtils.getCurrentSession();
                      Transaction transaction =  session.beginTransaction();          
                      List<Object[]> list = session.createQuery("select lkm_name,count(*) from LinkMan group by lkm_name").list();
                      for(Object[] objects : list) {
                          System.out.println(Arrays.toString(objects));
                      }
                      transaction.commit();
  • 相关阅读:
    Java编译期和运行期
    深入理解重载和重写及与之相关的多态性 Overloading and Overriding(转)
    Java编译期优化与运行期优化技术浅析
    JAVA反射
    JSP笔记(二)
    JSP笔记(一)
    字符串之String类
    JAVA的Random类介绍
    (转)详细分析css float 属性
    协议与委托
  • 原文地址:https://www.cnblogs.com/yanqingguo/p/9757705.html
Copyright © 2020-2023  润新知