您的位置:首页 > 其它

Hibernate常用的聚合函数

2015-02-04 10:39 211 查看
package entity;

//持久化类

import javax.persistence.Entity;

import javax.persistence.GeneratedValue;

import javax.persistence.GenerationType;

import javax.persistence.Id;

import javax.persistence.Table;

//HQl查询图书信息

@Entity

@Table

public class HqlQuery {

 private int id;

 private String name;

 private String author;

 @Id

 @GeneratedValue(strategy=GenerationType.IDENTITY)

 public int getId() {

  return id;

 }

 public void setId(int id) {

  this.id = id;

 }

 public String getName() {

  return name;

 }

 public void setName(String name) {

  this.name = name;

 }

 public String getAuthor() {

  return author;

 }

 public void setAuthor(String author) {

  this.author = author;

 }

 

 public HqlQuery() {

  super();

 }

 public HqlQuery(String name, String author) {

  super(); 

  this.name = name;

  this.author = author;

 }

}

 

//五大函数:

package test;

import org.hibernate.Session;

import org.hibernate.Transaction;

import util.HibernateUtil;

public class FunTest {

 public static void main(String[] args) {

  //hcount();

  //hsum();

  //hmax();

  //hmin();

  havg();

 }

 public static void hcount(){

  Session session=HibernateUtil.getCurrentSession();

  Transaction transaction=session.beginTransaction();

  String hql="select count(*) from HqlQuery";

  long n=(Long) session.createQuery(hql).uniqueResult();

  System.out.println("记录数:" + n);

 }

 public static void hsum(){

  Session session=HibernateUtil.getCurrentSession();

  Transaction transaction=session.beginTransaction();

  String hql="select sum(id) from HqlQuery";

  long n=(Long) session.createQuery(hql).uniqueResult();

  System.out.println("和为:" + n);

 }

 public static void hmax(){

  Session session=HibernateUtil.getCurrentSession();

  Transaction transaction=session.beginTransaction();

  String hql="select max(id) from HqlQuery";

  int n=(Integer) session.createQuery(hql).uniqueResult();

  System.out.println("最大id:" + n);

 }

 public static void hmin(){

  Session session=HibernateUtil.getCurrentSession();

  Transaction transaction=session.beginTransaction();

  String hql="select min(id) from HqlQuery";

  int n=(Integer) session.createQuery(hql).uniqueResult();

  System.out.println("最小id:" + n);

 }

 public static void havg(){

  Session session=HibernateUtil.getCurrentSession();

  Transaction transaction=session.beginTransaction();

  String hql="select avg(id) from HqlQuery";

  double n=(Double) session.createQuery(hql).uniqueResult();

  System.out.println("id平均值为:" + n);

 }

}

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息