使用hql

来源:互联网 发布:双色球杀号软件 编辑:程序博客网 时间:2024/05/20 01:39

坚持每天写博文,积累下开发中的点点滴滴
当我们需要查询数据库时,除了使用session.get()通过传入一个id进行查询还可以创建一个查询对象来传入sql语句进行查询。
HQL是Hibernate Query Language的缩写,可以理解成:除了关键字,其他内容都是java的类名,属性名
比如这一句:“SELECT o FROM User o;”【User】是java的domain对象,后面的o是给User起的别名,SELECT o 相当于sql的SELECT *

SELECT o FROM User o = FROM User
- 代码演示:

public void selectAll(){        Session session = HibernateUtils.getSession();        //创建一个查询对象:sql (除了关键字,其他内容都是java的类名,属性名)        String hql = "SELECT o FROM User o";        //SELECT o FROM User o = FROM User        Query query = session.createQuery(hql);        List<User> list = query.list();        System.out.println(list);        session.close();    }
  • 带条件查询
 public void find(){        Session session = HibernateUtils.getSession();        //创建一个查询对象:sql (除了关键字,其他内容都是java的类名,属性名)        String hql = "SELECT o FROM User o WHERE o.id>?";//此id属性是java属性        //JDBC 索引从1开始        //hibernate 索引从0开始        Query query = session.createQuery(hql).setLong(0, 2L);        List<User> list = query.list();        System.out.println(list);        session.close();    }

未完待续

原创粉丝点击