Hibernate的查询 HQL查询 查询某几列
HQL 是Hibernate Query Language的简写,即 hibernate 查询语言:HQL采用面向对象的查询方式。HQL查询提供了更加丰富的和灵活的查询特性,因此Hibernate将HQL查询方式立为官方推荐的标准查询 方式,HQL查询在涵盖Criteria查询的所有功能的前提下,提供了类似标准SQL语句的查询方式,同时也提供了更加面向对象的封装。
在HQL中,你可以直接From你的实体对象来进行查询:
Java代码
/**
* 简单使用
*/
@SuppressWarnings("unchecked")
public static void test1(){
Session session = HibernateSessionFactory.currentSession();
String hql = "from User u";
Query query = session.createQuery(hql);
List<User> user = query.list();
System.out.println("------------SQL执行完毕---------------");
for (User us : user) {
System.out.println(us.getName());
}
}
类的后面可以接别名
如果想单独查询某一列,可以这样使用:
Java代码
/**
* 查询某列
*/
@SuppressWarnings("unchecked")
public static void test2(){
Session session = HibernateSessionFactory.currentSession();
String hql = "select name from User u";
Query query = session.createQuery(hql);
List<String> user = query.list();
System.out.println("------------SQL执行完毕---------------");
for (String us : user) {
System.out.println(us);
}
}
如果想查询某几列的话,只是返回的内容不同了而已:
Java代码
/**
* 查询某几列
*/
@SuppressWarnings("unchecked")
public static void test3(){
Session session = HibernateSessionFactory.currentSession();
String hql = "select id,name from User u";
Query query = session.createQuery(hql);
List user = query.list();
System.out.println("------------SQL执行完毕---------------");
for(Object obj : user){
Object[] arrObj = (Object[])obj;
System.out.println(arrObj[0] + "/t-->/t" + arrObj[1]);
}
}
Hibernate的查询 HQL查询 查询某几列的更多相关文章
- Hibernate不同DB的日期查询
Java web项目开发,ORM层用的是Hibernate,用HQL语句查询不同数据库时,日期时间比较还是有所区别的. 1.在Mysql数据库时,是这样写的: 上面是个代码拼串截图,翻译一下是这样的: ...
- hibernate学习(7)——HQL查询
1.HQL查询定义 Hibernate查询分类: 1. get/load 根据OID检索 2. 对象视图检索 c.getOrders 3. Sql语句 createSqlQuery 4. Hql语句 ...
- Hibernate批量处理数据、HQL连接查询
一.批量处理操作 批量处理数据是指在一个事务场景中处理大量数据.在应用程序中难以避免进行批量操作,Hibernate提供了以下方式进行批量处理数据: (1)使用HQL进行批量操作 数据库层面 ...
- Hibernate学习之hql查询语句
* 页面上数据的字段和数据库中字段差不多,这个时候,采用迫切连接 结构比较好,如果页面上的字段很少,要按照需求加载数据,采用带构造函数的select查询 实例讲解:转自:http://www.cn ...
- 《Java从入门到放弃》入门篇:hibernate查询——HQL
不知不觉又到了hibernate的最后一篇了,只感觉时光飞逝~,岁月如梭~! 转眼之间,我们就···························,好吧,想装个X,结果装不下去了,还是直接开始吧· ...
- Hibernate中关于HQL查询返回List<Object>数据的结果集问题
---恢复内容开始--- 开发中遇到的一个小问题,使用Hibernate中的HQL查询时,使用query.list()查询出来的是一个List<Object>结果集 原来代码: publi ...
- hibernate框架学习笔记7:HQL查询、Criteria查询简介
HQL查询:hibernate独有的查询语言 适用于不复杂的多表查询 示例: 实体类: package domain; public class Customer { private Long cus ...
- hibernate框架学习之数据查询(HQL)
lHibernate共提供5种查询方式 •OID数据查询方式 •HQL数据查询方式 •QBC数据查询方式 •本地SQL查询方式 •OGN数据查询方式 OID数据查询方式 l前提:已经获取到了对象的OI ...
- Hibernate的四种查询方式(主键查询,HQL查询,Criteria查询,本地sql查询)和修改和添加
Hibernate的添加,修改,查询(三种查询方式)的方法: 案例演示: 1:第一步,导包,老生常谈了都是,省略: 2:第二步,创建数据库和数据表,表结构如下所示: 3:第三步创建实体类User.ja ...
随机推荐
- tomcat与resin的比较
Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache.Sun 和其他一些公司及个人共同开发而成.由于有了 ...
- Swift补基础之Selector、条件编译、编译标记、NSObject
在swift中使用条件编译比较直接 #if <condition> #elseif <condition> #else #endif 例如 :在debug模式和release模 ...
- Python enumerate函数
enumerate函数接受一个可遍历的对象,如列表.字符串,可同时遍历下标(index)及元素值(value) >>> a = ['aaa','bbb','ccc',1235] &g ...
- rpm包安装
RPM全称是“RedHatPackageManager”是由RedHat公司发发展起来的,本质是将软件源码包经过编译并且打包成rpm的格式,rpm文件包含的有二进制文件,配置文件,库文件等,同时RPM ...
- redisi配置安装
一.单机配置 http://www.codeceo.com/article/centos-redis-setup.html 二.测试安装情况 http://blog.sina.com.cn/s/blo ...
- Java 二维码生成工具类
/** * 二维码 工具 * * @author Rubekid * */ public class QRcodeUtils { /** * 默认version */ public static fi ...
- <httpProtocol/>配置http协议头
Web.Config中的位置 <configuration> <system.webServer> <httpProtocol> <!--http协议内容-- ...
- WPF样式和资源2
<Window.Resources> <FontFamily x:key="ButtonFontFamily">Time New Roman</Fon ...
- RecycleView 瀑布流滑动移位
RecycleView StaggeredLayoutManager(瀑布流)滑动的时候,默认会出现item移动的问题,需以下来个步骤来解决: 附上StaggeredLayoutManager中的一段 ...
- BubbleSort - 实用委托
概述: 排序类,可以对任意类型的对象进行排序,包括基本数据类型; 对象类,不仅定义本身数据,同时包含了排序的细节. 排序类(BubbleSorter): using System; using Sys ...