HQL查询,DBC查询,SQL查询,OID查询,命名方法查询

一.HQL查询

1.获取session对象

2.创建sql语句

3.创建Query接口

Query query = session.createQuery(sql语句);

条件查询:

@?代表使用索引占位符  @:代表使用命名占位符  @选择全部字段可以省略select *

String hql = "from User where id=? and name=?";

String hql = "from User where id=:id and name=:id";

@  需要设置多个参数时,使用User对象保存参数,需要使用命名占位符,并且名字和属性名一致

HQL查询,DBC查询,SQL查询,OID查询,命名方法查询_第1张图片

@  需要设置多个参数时,使用map集合保存参数,需要使用命名占位符,名字可以随便取

HQL查询,DBC查询,SQL查询,OID查询,命名方法查询_第2张图片

查询全部:

String hql = "from User";

分页查询:

query.setFirstResult(起始位置);

query.setMaxResults(每页显示的结果);

动态查询:

HQL查询,DBC查询,SQL查询,OID查询,命名方法查询_第3张图片

4.设置参数

使用命名占位符设置参数

query.setParameter("id", 1);

使用索引占位符设置参数,第一个参数为参数的位置,从零开始

query.setParameter(1, 1);

5.查询

单个结果:query.uniqueResult();

多个结果:query.list();


二.DBC查询

1.获取session对象

2.创建Criteria接口

Criteria criteria = session.createCriteria(User.class);

3.添加参数

条件查询:

HQL查询,DBC查询,SQL查询,OID查询,命名方法查询_第4张图片

查询全部:

获取总的记录条数:

HQL查询,DBC查询,SQL查询,OID查询,命名方法查询_第5张图片

排序:

HQL查询,DBC查询,SQL查询,OID查询,命名方法查询_第6张图片


投影查询:

HQL查询,DBC查询,SQL查询,OID查询,命名方法查询_第7张图片
HQL查询,DBC查询,SQL查询,OID查询,命名方法查询_第8张图片

动态查询:


查询语句:

单个结果:criteria.uniqueResult();

多个结果:criteria.list();

你可能感兴趣的:(HQL查询,DBC查询,SQL查询,OID查询,命名方法查询)