4, hibernate Query Language (HQL)

1、HQL(Hibernate Query language)

hibernate query language: the main object-oriented thinking to write SQl statement, hibernate query form

1.1, all inquiries:

From order // order is the name of the object is not a table

   //查询所有

    public void findAll(){

        //得到seesion

        Session session = YtUserUtils.openSession();



        String hql = "from UserinfoEntity"; //找对象 不是表

        //createQuery 前面是hql,后面是指向要查询的内容

        Query <UserinfoEntity> query = session.createQuery(hql, UserinfoEntity.class);

        //拿到结果集

        List <UserinfoEntity> resultList = query.getResultList();

        //遍历结果集,输出

        for (UserinfoEntity userinfoEntity:resultList) {

            System.out.println(userinfoEntity.getUid() + "\t" + userinfoEntity.getUserName() + "\t" + userinfoEntity.getUserPass());

        }

       

        //关闭session

        session.close();

    }

Alias query: String HQL = "UserInfoEntity from the SELECT ue ue";

1.2, paging query:

//分页查询

    public void findByPage(int start,int size){

        //得到seesion

        Session session = YtUserUtils.openSession();



        String hql = "from UserinfoEntity"; //找对象 不是表

        //createQuery 前面是hql,后面是指向要查询的内容

        Query <UserinfoEntity> query = session.createQuery(hql, UserinfoEntity.class);

        //设置起始位置

        query.setFirstResult(start);  //从0开始

        //设置每次取多少条记录

        query.setMaxResults(size);

        //拿到结果集

        List <UserinfoEntity> resultList = query.getResultList();

        //遍历结果集,输出

        for (UserinfoEntity userinfoEntity:resultList) {

            System.out.println(userinfoEntity.getUid() + "\t" + userinfoEntity.getUserName() + "\t" + userinfoEntity.getUserPass());

        }



        //关闭session

        session.close();

    }

1.3, query :( conditions index placeholder)

//条件查询(索引占位符)

    public void findByIdHql(Integer uid){

        //得到session

        Session session = YtUserUtils.openSession();



        //hql

        String hql = "from UserinfoEntity where uid = ?";

        Query <UserinfoEntity> query = session.createQuery(hql, UserinfoEntity.class);

        //设置参数值

        query.setParameter(0,uid);

        //获取单个对象

        UserinfoEntity userinfoEntity = query.uniqueResult();

        System.out.println(userinfoEntity.getUid() + "\t" + userinfoEntity.getUserName() + "\t" + userinfoEntity.getUserPass());

        //关闭链接

        session.close();

    }

1.4, condition query :( named placeholders)

 //条件查询(命名占位符)

    public void findByIdHqlByName(Integer uid){

        //得到session

        Session session = YtUserUtils.openSession();

        //hql

        String hql = "from UserinfoEntity where uid =:uid";

        Query <UserinfoEntity> query = session.createQuery(hql, UserinfoEntity.class);

        //设置参数值

        query.setParameter("uid",uid);

        //获取单个对象

        UserinfoEntity userinfoEntity = query.uniqueResult();

        System.out.println(userinfoEntity.getUid() + "\t" + userinfoEntity.getUserName() + "\t" + userinfoEntity.getUserPass());

        //关闭链接

        session.close();

    }

 

 

Published 143 original articles · won praise 40 · views 20000 +

Guess you like

Origin blog.csdn.net/LemonSnm/article/details/96865845