zoukankan      html  css  js  c++  java
  • Hibernate HQL的使用

    1、简单查询(查询所有)

    Session session=HibernateUtil.getSessionFactory().getCurrentSession();
    Transaction tx=session.beginTransaction();
    List<People> peoples=session.createQuery("from People").list();
    for(People people:peoples){
    	System.out.println(people.getName());
    }
    tx.commit();

    2、依照參数查询

    Session session=HibernateUtil.getSessionFactory().getCurrentSession();
    Transaction tx=session.beginTransaction();
    //1、依照位置进行參数绑定
    /*Query query=session.createQuery("from People Where name=?");
      query.setString(0,"小明1");
    */
    //2、依照參数名进行參数绑定
    Query query=session.createQuery("from People Where name=:name");
    query.setString("name","小明1");
    List<People> peoples=query.list();
    for(People people:peoples){
    	System.out.println(people.getName());
    }
    tx.commit();

    3、分页查询

    Session session=HibernateUtil.getSessionFactory().getCurrentSession();
    Transaction tx=session.beginTransaction();
    Query query=session.createQuery("from People");
    query.setFirstResult(0);//设置查询開始的起始位置
    query.setMaxResults(2);//设置查询的数目
    List<People> peoples=query.list();
    for(People people:peoples){
    	System.out.println(people.getName());
    }
    tx.commit();

    4、聚集函数的使用

    Session session=HibernateUtil.getSessionFactory().getCurrentSession();
    Transaction tx=session.beginTransaction();
    //count()
    Query query=session.createQuery("select count(*) from People");
    long count=(long) query.uniqueResult();
    System.out.println(count);
    tx.commit();
    //min() max() avg() sum()的使用与count相似

    5、in的使用


    Session session=HibernateUtil.getSessionFactory().getCurrentSession();
    Transaction tx=session.beginTransaction();
    String names[]={"小明1","小明2","小明3"};
    Query query=session.createQuery("from People where name in (:name)");
    query.setParameterList("name",names);
    List<People> peoples=query.list();
    for(People people:peoples){
    	System.out.println(people.getId());
    }
    tx.commit();




  • 相关阅读:
    docker安装软件初体验
    docker的安装------------------以centos为例
    DOS常用命令总结
    Windows批处理功能-bat
    KALI系统上W3AF(Web Application Attack and Audit Framework)安装部署技巧
    调试问题
    jmeter 5.2下载binary版本后直接解压报错
    【注释】IntelliJ IDEA添加注释的快捷键是什么?
    [mybatis]自动逆向工程
    [数据库]mysql MySQL报错-Access denied for user 'root'@'localhost' (using password: NO)
  • 原文地址:https://www.cnblogs.com/wzzkaifa/p/7398796.html
Copyright © 2011-2022 走看看