由于比较简单,在此处只写一些HQL语言。

表关系,多对一。

CREATE TABLE `user` (
`id` int() NOT NULL AUTO_INCREMENT,
`uname` varchar() ,
PRIMARY KEY (`id`)
)
CREATE TABLE `idcard` (
`id` INT() PRIMARY KEY NOT NULL AUTO_INCREMENT,
`addr` VARCHAR(),
`uid` INT() ,
FOREIGN KEY (`uid`) REFERENCES `user` (`id`)
)

其中每张表都有对应的类,分别是User,IdCard

1 查询全部

Query q = session.createQuery("from User");
List list = q.list();

2 查询指定列

Query q = session.createQuery("select u.uname, u.id from User u");

3 条件查询,and,or,between,模糊查询

Query q = session.createQuery("from User u where u.id between ? and ?");
q.setParameter(, );
q.setParameter(, );

4 聚合函数,count;分组,group by

Query q = session.createQuery("select i.iaddr,count(*) from User u, IdCard i where u.id=i.id group by i.iaddr ");
List list = q.list();

5 分页查询

Query q = session.createQuery("from User");
q.setFirstResult();
q.setMaxResults();

6 获取总记录数

方法一:使用聚合函数COUNT(*)

Query q = session.createQuery("select count(*) from User");
Long result = (Long) q.uniqueResult();

方法二:使用scroll(),首先滚动到最后,然后获取索引值

Query q = session.createQuery("from User");

ScrollableResults scrollResult = q.scroll();  //得到滚动的结果集
scrollResult.last(); //滚动到最后一行
int result = scrollResult.getRowNumber() + ; //获取当前值的索引值,因为是从0开始的,所以需要加1

7 hibernate对数据库连接C3P0连接池的支持,配置参数,可以到hibrenate.properties文件中找到

hibernate.cfg.xml配置文件如下

    <property name="hibernate.connection.driver_class">org.hibernate.connection.C3P0ConnectionProvider</property>
<property name="hibernate.c3p0.min_size"></property>
<property name="hibernate.c3p0.max_size"></property>
<property name="hibernate.c3p0.max_statements"></property>
<property name="hibernate.c3p0.timeout"></property>
<property name="hibernate.c3p0.idle_test_period"></property>
<property name="hibernate.c3p0.acquire_increment"></property>

在mysql中使用如下语句可以查看连接

SHOW PROCESSLIST;

hibernate 中HQL查询的更多相关文章

  1. Hibernate 中Hql 查询中间表的用法

    案例简述: 项目中存在User 用户表 和 Role 角色表 它们之间是多对多的关系 在User类定义中 使用hibernate注解 //角色列表 @ManyToMany(targetEntity = ...

  2. Hibernate中Hql查询

    这篇随笔将会记录hql的常用的查询语句,为日后查看提供便利. 在这里通过定义了三个类,Special.Classroom.Student来做测试,Special与Classroom是一对多,Class ...

  3. hibernate的hql查询

    1.概念介绍 1.Query是Hibernate的查询接口,用于从数据存储源查询对象及控制执行查询的过程,Query包装了一个HQL查询语句. 2.HQL是Hibernate Query Langua ...

  4. Hibernate之HQL查询

    一.Hibernate 提供了以下几种检索对象的方式: 导航对象图检索方式: 根据已经加载的对象导航到其他对象 OID 检索方式: 按照对象的 OID 来检索对象 HQL 检索方式:使用面向对象的 H ...

  5. Hibernate五 HQL查询

    HQL查询一 介绍1.HQL:Hibernate Query Language,是一种完全面向对象的查询语言.使用Hibernate有多重查询方式可供选择:hibernate的HQL查询,也可以使用条 ...

  6. Hibernate 的hql查询简介【申明:来源于网络】

    Hibernate 的hql查询简介[申明:来源于网络] Hibernate 的hql查询简介:http://blog.csdn.net/leaf_130/article/details/539329 ...

  7. JavaWeb_(Hibernate框架)Hibernate中数据查询语句HQL基本用法

    HQL(Hibernate Query Language) 是面向对象的查询语言, 它和 SQL 查询语言有些相似. 在 Hibernate 提供的各种检索方式中, HQL 是使用最广的一种检索方式. ...

  8. hibernate中HQL练习时候一个小小的错误导致语法异常

    package cn.db.po.test; import java.util.List; import cn.db.po.User; import cn.db.po.biz.UserBiz; pub ...

  9. hibernate中带查询条件的分页

    所谓分页,从数据库中分,则是封装一个分页类.利用分页对象进行分页. 但,分页往往带查询条件. 分页类的三个重要数据:[当前页码数],[数据库中的总记录数],[每页显示的数据的条数] 原理:select ...

随机推荐

  1. MySQL系列:innodb源码分析之内存管理

    http://blog.csdn.net/yuanrxdu/article/details/40985363 http://book.2cto.com/201402/40307.html 从MySQL ...

  2. h264 封装 RTMP中FLV数据的解析 rtmp协议简单解析以及用其发送h264的flv文件

    一个完整的多媒体文件是由音频和视频2部分组成的.H264.Xvid等就是视频编码格式,MP3.AAC等就是音频编码格式.字幕文件只是其中附带部分. 把视频编码和音频编码打包成一个完整的多媒体文件,可以 ...

  3. 开始整理iOS职位面试问题及答案

    Object-c的类可以多重继承么?可以实现多个接口么?Category是什么?重写一个类的方式用继承好还是分类好?为什么? 答: Object-c的类不可以多重继承;可以实现多个接口,通过实现多个接 ...

  4. 前端必备工具-Emmet (Zen Coding)

    Emmet 可以快速的编写 HTML 和 CSS,输入指令如: ul#nav>li*4>a*4 敲击一下TAB 键,就会输出: <ul id="nav"> ...

  5. ARM指令集—SWP指令

    ARM指令集-SWP指令 SWP和SWPB是ARM指令集中对存储单元的原子操作.即对存储单元的一次读和一次不可被切割. SWP和SWPB分别完毕存储器和寄存器之间 一个字(32bit)和一个字节(8b ...

  6. 实用Linux命令

    lsof -i:6379 查看某个端口的程序有没有起起来. netstat -tnlp 可以查看监听的端口,其中l是listening, p是显示program, n是显示ip而不是name, t看起 ...

  7. TZOJ 1072: 编辑距离(动态规划)

    1072: 编辑距离 时间限制(普通/Java):1000MS/10000MS     内存限制:65536KByte 总提交: 917            測试通过:275 描写叙述 如果字符串的 ...

  8. [转发] git设置代理

    一. 写的很好推荐,(http与ssh设置都有) https://imciel.com/2016/06/28/git-proxy/ 二. 只有 http的方式代码设置 http://stackover ...

  9. tomcat控制台启动成功但是却访问不了主页

    从杭州来京出差,也许是因为春节将至,也或许是由于携带的一点点小情绪致使自己丧失了理智,So 那就开始吧.............北京有些地方也不错的. 需要帮同事在客户这边搭建一个Java proje ...

  10. Makefile自动编写工具实例

    准备源文件如下: /*test.c*/ #include <stdio.h>#include "phello.h"#include "pword.h" ...