Hibernate--Criteria

来源:互联网 发布:牛顿环实验数据参考 编辑:程序博客网 时间:2024/05/22 09:07

1 执行SQL语句

    @SuppressWarnings({ "deprecation", "unchecked" })    public void criteria02(){        Session session=HibernateUtil.getSessionFactory().getCurrentSession();        Transaction transaction=session.beginTransaction();        Criteria criteria=session.createCriteria(User.class).add(Restrictions.sqlRestriction(" name like ?", "张%", Hibernate.STRING));        List<User> lstUser=criteria.list();        for (User user : lstUser) {            System.out.println(user.getName()+"  "+user.getPassword());        }        transaction.commit();    }

2 条件

    public void testQuery22(){        Session session = HibernateUtil.getSession();        Transaction tx = session.beginTransaction();        List<Book> list =session.createCriteria(Book.class)                .add(Restrictions.eq("id", 1))                .list();                for(Book b:list){                    System.out.println(b+"-"+b.getCategory().getId());                }        tx.commit();        HibernateUtil.closeSession();    }

3 in

    public void testQuery23(){        Session session = HibernateUtil.getSession();        Transaction tx = session.beginTransaction();        List<Integer> inl = new ArrayList<Integer>();        inl.add(1);        inl.add(3);        List<Book> list =session.createCriteria(Book.class)                .add(Restrictions.in("id", inl))                .list();                for(Book b:list){                    System.out.println(b+"-"+b.getCategory().getId());                }        tx.commit();        HibernateUtil.closeSession();    }

3 like查询

    public void testQuery24(){        Session session = HibernateUtil.getSession();        Transaction tx = session.beginTransaction();        List<Book> list =session.createCriteria(Book.class)                //.add(Restrictions.like("name", "中%"))                //.add(Restrictions.like("name", "的", MatchMode.EXACT))                //ilike ignoreCase like忽略大小写                .add(Restrictions.ilike("name", "%的%"))                .list();                for(Book b:list){                    System.out.println(b+"-"+b.getCategory().getId());                }        tx.commit();        HibernateUtil.closeSession();    }

4 or 逻辑分组

    public void criteria01(){        Session session=HibernateUtil.getSessionFactory().getCurrentSession();        Transaction transaction=session.beginTransaction();        Criteria criteria=session.createCriteria(User.class).add(Restrictions.like("name", "张%"));        criteria.add(Restrictions.or(Restrictions.eq("id", 1),Restrictions.eq("name", "张三")));        List<User> lstUser=criteria.list();        for (User user : lstUser) {            System.out.println(user.getName()+"  "+user.getPassword());        }        transaction.commit();    }

5 排序

public void criteria02(){        Session session=HibernateUtil.getSessionFactory().getCurrentSession();        Transaction transaction=session.beginTransaction();        Criteria criteria=session.createCriteria(User.class);        criteria.addOrder(Order.desc("id"));        List<User> lstUser=criteria.list();        for (User user : lstUser) {            System.out.println(user.getName());        }    }
原创粉丝点击