查询数据库中所有数据
a) 使用createQuery 传入hql语句查询
Query query = session.createQuery("fromcom.itheima.a_hello.User");
//list将语句执行,并返回结果
List<User> list = query.list();
查询一行数据 query.uniqueResult()
Useru= (User)query.uniqueResult();
分页查询
query.setFirstResult(arg0);//指定从哪个地方开始查询
query.setMaxResults(arg1);//指定从数据库中查询几个结果
b) 使用Criteria 查询 => Hibernate独创的面向对象的查询=> 无语句
Criteriacriteria = session.createCriteria(User.class);
//select* from t_user;
List<User>list = criteria.list();
查询一行数据
criteria.add(Restrictions.eq(属性名,属性值)); //加入查询条件
criteria.uniqueResult(); //返回查询结果
//模糊查询
criteria.add(Restrictions.like(属性名,”%关键字%”));
//查询id大于1的
criteria.add(Restrictions.ge(“id”,”1”)); //gt大于 lt小于 eq等于 ge大于等于 le小于等于
c) 使用原生的Sql查询
SQLQueryquery = session.createSQLQuery("select * from t_user");
//addEntity 将查询结果封装到指定对象中
query.addEntity(User.class);
List<User>list = query.list();
System.out.println(list);