HQL Query查询
来源:互联网 发布:肛门调教知乎 编辑:程序博客网 时间:2024/05/16 06:30
对于我们学习的HQL,我大概理解为就是一种查询的语言,它没有增加、删除、修改的作用,而对我们用来查询的操作,感觉用起来就是很简便,代码很少,很好理解一些。下面是我通过学习和搜索对HQL的一些简单认识和总结。
一、对HQL的一些基本任何是了解:
1、 HQL(Hibernate Query Language):面向对象的查询语句,与SQL不同,HQL中的对象名是区分大小写的(除了Java类和属性其他部分不区分大小写);HQL中查的是对象而不是和表,并且支持多态;HQL主要通过QUERY来操作,Query的创建方式:
Query q=session createQuery(hql);
2、Query是Hibernate的查询接口,用于从数据存储源查询对象及控制执行查询的过程,Query包装了一个HQL查询语句。
3、HQL 是使用最广的一种检索方式. 它有如下功能:
a) 在查询语句中设定各种查询条件
b) 支持投影查询, 即仅检索出对象的部分属性
c) 支持分页查询
分页查询:
setFirstResult(int firstResult):设定从哪一个对象开始检索,参数firstResukt表示这个对象在查询结果中的索引位置,索引位置的起始值为0,默认情况下,Query从查询结果中的第一个对象开始检索。
setMaxResult(int maxResults):设定一次最多检索出的对象的数目,在默认情况下,Query和Criteria接口检索出查询结果中所有对象。
EG://HQL查询
Query query=session.createQuery(“from User user order by user.id”);
query.setFirstResult(3);
query.setMaxResults(4);
query.list();
d) 支持连接查询
e) 支持分组查询, 允许使用 HAVING 和 GROUP BY 关键字
f) 提供内置聚集函数, 如 sum(), min() 和 max()
g) 能够调用 用户定义的 SQL 函数或标准的 SQL 函数
h) 支持子查询
i) 支持动态绑定参数
二、下面是我们做的一个用query方法的一个查询操作的简单小实例:
1)首先定义一个查询的方法:
public static void query(String name){
Session s=null;
try{
s=HibernateUtil.getSession();
//hibernate的查询语言.from后面+类名(区分大小写).也可以用as给类起一个别名,as可以省略
//按照姓名查找
String queryString="from 类名 as 类的别名 where 类的别名.name=:n";
Query query=s.createQuery(queryString);
query.setString("n",name);
//分页显示的操作
query.setFirstResult(2);//显示第几页,当前页
query.setMaxResults(2);//每页做多显示的记录数
//返回多行结果集
List<User> list=query.list();
for(User u:list){
System.out.println(u.getId()+":"+u.getName());
}
/*User user=(User) query.uniqueResult();
System.out.println(user.getId()+":"+user.getName());*/
/*query.uniqueResult();//返回一行结果集*/
}finally{
if(s!=null){
s.close();
}
}
}
- HQL Query查询
- HQL查询语句用法@Query
- Hibernate查询语言(Query Language), 即HQL
- HQL query Criteria 查询方式 入门
- Hibernate利用Query接口进行HQL查询
- hibernate参考手册之---Hibernate查询语言(Query Language), 即HQL
- Hibernate查询(Query Language,hql,ejbql,nativeql,qbc,qbe)
- Hibernate Recursive Query(Hibernate 递归查询) HQL 递归的实现
- hibernate中HQL查询count返回query取得其长度
- 关于HQL(Hibernate Query Language)的查询方法
- HQL(Hibernate Query Language)
- Hibernate Query Language (HQL)
- HQL(Hibernate Query Language)
- Hibernate Query examples (HQL)
- (2)hibernate HQL命名查询和Query接口的分页查询
- HQL-Query查询中的占位符处理到动态分页查询
- Hibernate查询方式之:HQL查询(需要使用的类是:Query)
- HQL查询
- 备忘
- 重复使用 setCenterWidget
- sprintf,你知道多少?
- 黑马程序员-javascript学习之代码示例
- Picking: Screen to Projection Window Transform
- HQL Query查询
- android布局详解
- Linux(4)常用命令
- poj1061青蛙的约会
- 0.windbg-!logexts(自带的监控API)
- 内存中的堆与栈
- Linux校园社区上线
- ArryList的使用方法
- 两种图像缩放算法的对比与实现