Hql例子

   //hql查询
    public static void main(String[] args) {
        Configuration cfg = new Configuration().configure();
        //session对象
        SessionFactory factory = cfg.buildSessionFactory();
        Session session = factory.openSession();
       /* Transaction tx=session.beginTransaction();
        String hql="from Dept";
        Query query = session.createQuery(hql);
        List list = query.list();
        for (Dept dept:list) {
            System.out.println(dept.getDeptname());
        }
*/

       //查部分
     /*   String hql="from Dept where deptname='开发部'";
        Query query = session.createQuery(hql);
        List list = query.list();
        for (Dept dept:list) {
            System.out.println(dept.getDeptname());
        }*/

        //查部分分列
       /* String hql="select  dept.deptno,dept.deptname from Dept dept";
        Query query = session.createQuery(hql);
        List list = query.list();
        for (Object[] obj:list) {
            for (Object child:obj) {
                System.out.println(child);
            }

        }*/

        //查部分分列返回Dept
      /*  String hql="select new Dept( dept.deptno,dept.deptname) from Dept dept";
        Query query = session.createQuery(hql);
        List list = query.list();
        for (Dept dept:list) {
            System.out.println(dept.getDeptname());

        }*/
        //参数查询  匿名占位符
/*        String hql="from Dept where deptname=?";
        Query query = session.createQuery(hql);
        query.setParameter(0,"开发部");
        List list = query.list();
        for (Dept dept:list) {
            System.out.println(dept.getDeptname());
        }*/
        //参数查询  参数名称绑定
      /*  String hql="from Dept where deptname=:deptname";
        Query query = session.createQuery(hql);
        query.setParameter("deptname","开发部");
        List list = query.list();
        for (Dept dept:list) {
            System.out.println(dept.getDeptname());
        }*/

        //参数查询  参数名称绑定+对象属性
        String hql="from Dept where deptname=:deptname";
        Dept dd=new Dept();
        dd.setDeptname("开发部");
        Query query = session.createQuery(hql);
        query.setProperties(dd);
        List list = query.list();
        for (Dept dept:list) {
            System.out.println(dept.getDeptname());
        }
    }

你可能感兴趣的:(Hql例子)