01.搭建开发环境

02.基本查询

package com.gordon.test;

import java.text.DecimalFormat;
import java.util.Arrays;
import java.util.List; import org.hibernate.Session;
import org.hibernate.Transaction;
import org.junit.Test; import com.gordon.domain.Book;
import com.gordon.utils.HibernateUtil; public class TestDemo1 { /**
* 分组查询
* 查询结果:
Hibernate:
select
publisher1_.name as col_0_0_,
count(*) as col_1_0_
from
t_book book0_,
t_publisher publisher1_
where
book0_.publisher_id=publisher1_.id
group by
book0_.publisher_id
[电子工业出版社, 3]
[北京大学出版社, 2]
[人民邮电出版社, 2]
*/
@Test
public void run5() {
Session session = HibernateUtil.getCurrentSession();
Transaction transaction = session.beginTransaction(); List<Object[]> list = session.createQuery("select b.publisher.name, count(*) from Book b group by b.publisher").list();
for (Object[] book : list) {
System.out.println(Arrays.toString(book));
} transaction.commit();
} /**
* 聚合函数
* 查询结果:
Hibernate:
select
count(*) as col_0_0_
from
t_book book0_
Hibernate:
select
sum(book0_.price) as col_0_0_
from
t_book book0_
Hibernate:
select
max(book0_.price) as col_0_0_,
min(book0_.price) as col_1_0_
from
t_book book0_
Hibernate:
select
avg(book0_.price) as col_0_0_
from
t_book book0_
count: 7
sum: 330.04
Max:70.00 Min:31.00
avg: 47.15
*/
@Test
public void run4() {
Session session = HibernateUtil.getCurrentSession();
Transaction transaction = session.beginTransaction(); String count = "select count(*) from Book";
Long c = (Long) session.createQuery(count).uniqueResult(); String sum = "select sum(b.price) from Book b";
Double s = (Double) session.createQuery(sum).uniqueResult(); String maxmin = "select max(b.price), min(b.price) from Book b";
Object[] mm = (Object[]) session.createQuery(maxmin).uniqueResult(); String avg = "select avg(b.price) from Book b";
Double a = (Double) session.createQuery(avg).uniqueResult(); DecimalFormat df = new DecimalFormat("00.00"); System.out.println("count: " + c);
System.out.println("sum: " + df.format(s));
System.out.println("Max:" + df.format(mm[0]) + " Min:" + df.format(mm[1]));
System.out.println("avg: " + df.format(a)); transaction.commit();
} /**
* 检索图书对象的部分属性
* 查询结果
Hibernate:
select
book0_.name as col_0_0_,
book0_.price as col_1_0_
from
t_book book0_
order by
book0_.price desc
[云计算技术及性能优化, 70.0]
[架构探险:轻量级微服务架构(下册), 63.2]
[中国冰雪梦, 54.0]
[生产微服务 , 44.0]
[VisualBasic2015实践教程 , 36.0]
[Photoshop图形图像处理, 31.84]
[C语言程序设计, 31.0]
*/
@Test
public void run3() {
Session session = HibernateUtil.getCurrentSession();
Transaction transaction = session.beginTransaction(); List<Object[]> list = session.createQuery("select b.name, b.price from Book b order by b.price desc").list();
for (Object[] book : list) {
System.out.println(Arrays.toString(book));
} transaction.commit();
} /**
* 对查询结果进行排序
* 查询结果:
Hibernate:
select
book0_.id as id1_0_,
book0_.name as name2_0_,
book0_.price as price3_0_,
book0_.publisher_id as publishe4_0_
from
t_book book0_
order by
book0_.price desc
70.0, 云计算技术及性能优化
63.2, 架构探险:轻量级微服务架构(下册)
54.0, 中国冰雪梦
44.0, 生产微服务
36.0, VisualBasic2015实践教程
31.84, Photoshop图形图像处理
31.0, C语言程序设计
*/
@Test
public void run2() {
Session session = HibernateUtil.getCurrentSession();
Transaction transaction = session.beginTransaction(); List<Book> list = session.createQuery("from Book b order by b.price desc").list();
for (Book book : list) {
System.out.println(book.getPrice() + ", " + book.getName());
} transaction.commit();
} /**
* 查询所有图书
* 查询结果:
Hibernate:
select
book0_.id as id1_0_,
book0_.name as name2_0_,
book0_.price as price3_0_,
book0_.publisher_id as publishe4_0_
from
t_book book0_
云计算技术及性能优化
C语言程序设计
中国冰雪梦
Photoshop图形图像处理
VisualBasic2015实践教程
生产微服务
架构探险:轻量级微服务架构(下册)
*/
@Test
public void run1() {
Session session = HibernateUtil.getCurrentSession();
Transaction transaction = session.beginTransaction(); List<Book> list = session.createQuery("from Book").list();
for (Book book : list) {
System.out.println(book.getName());
} transaction.commit();
}
}

最新文章

  1. 茂名石化BPM应用实践 ——业务协同及服务共享平台建设和应用
  2. Await, and UI, and deadlocks! Oh my!
  3. 局域网聊天Chat(马士兵视频改进版)
  4. windows磁盘分区
  5. GMF:如何在不打开Editor的情况下生成图片
  6. object-c中的类目,延展,协议
  7. php 简单的验证码
  8. 怎样在delphi中实现控件和窗体的拖拽
  9. http状态码对应表
  10. 关于MySQL MyISAM 表并发
  11. js观察者模式与Model
  12. ObjectARX® for Beginners: An Introduction
  13. js中的构造函数
  14. Eclipse git commit错误;Committing changes has encountered a problem An Internal error occured
  15. PCL中使用FLANN库(1)
  16. 火狐浏览器adobe flash player
  17. 使用migration创建表时,出错的解决方法
  18. Educational Codeforces Round 56 (Rated for Div. 2) F - Vasya and Array dp好题
  19. Charles下载和使用
  20. VSCode调试配置

热门文章

  1. C# 发布REST接口地址API服务
  2. C#封装百度Web服务API处理包含(Geocoding API,坐标转换API)
  3. 温故而知新 gulp.src 指定数组文件夹
  4. NPOI导出Excel2007-xlsx格式文件,用于web时需要注意的问题-XSSFWorkbook处理问题
  5. 安装composer slim(php web api micro services)
  6. Android开发6——布局中的wrap_content和fill_parent以及match_parent
  7. 【Android】8.1 主题基本用法
  8. 用TTTAttributedLabel创建变化丰富的UILabel
  9. transitionFromViewController方法的使用
  10. angular学习笔记(五)-阶乘计算实例(3)