有关Hibernate知识的学习(十)
Hibernate的查询相关的操作
创建query对象
设置条件值query.setParameter(int arg0,Object arg1);
第一个arg0表示占位符,arg1表示参数的值
占位符从0开始写起
接下来调用方法进行查询操作
HQL语句的学习
where 属性1 like ?
query.setParameter(int arg0,Object arg1)模糊查询
arg1改成"%模糊值%"
排序:
order by 属性名 desc //表名和字段名改成相应的类名和属性名
分页:
Hibernate不能使用limit分页,但是可以使用其中的两种方法
当然首先要查询所有
setFirstResult(m); //设置起始位置
setMaxResults(n); //设置每页记录数
投影查询:
查询不是所有字段值,而是部分字段值
查询语句的写法:
select 属性名 from 实体类名
不能写*,Hibernate不支持
调用list()方法,返回值可以使用Object接收
List<Object> list = query.list();
聚集函数:
select count(*) from 实体类名
HQL多表查询:
1、内连接:
基于条件的内连接,关联数据
SQL语句:表1 inner join 表2 on 条件 或者 直接where 条件
HQL语句:from 实体类 inner join set集合,返回值是一个数组
2、左外连接:
SQL语句:表1 left outer join 表2 on 条件 //左表的所有
HQL语句:from 实体类 left outer join set集合
3、右外连接
SQL语句:表1 right outer join 表2 on 条件 //右表的所有
HQL语句:from 实体类 right outer join set集合
4、迫切内连接
HQL语句:from 实体类 inner join fetch set集合 //底层实现和内连接一样,但是返回的list集合中为对象
5、迫切左连接
HQL语句:from 实体类 left outer join fetch set集合
本文标题:有关Hibernate知识的学习(十)
本文链接:https://www.haomeiwen.com/subject/neelfftx.html
网友评论