HQL数据查询(Hibernate推荐)

原创 2017年09月12日 23:25:55
 HQL是Hbernate官方推荐使用的查询语句
HQL的语句形式:select...from...where..group by..having...order by...
HQL对关键字大小写不敏感,习惯上小小小写,对JAVA等属性名称大小写敏感

 
     ---Query的使用----
例:String hql="from Sellor";//Sellor是一个类名
    Query query=session.createQuery(hql);
    List<Sellor>  sellors=query.list();
    for循环查看数据

别名的使用
    String hql=“from Sellor  as  sellor”
或者 String hql=“from Sellor   sellor”


-----------select语句
1以Object[]形式返回选择的属性
  默认情况下是这种形式
  String hql="select s.name, s.tel from Seller s";
  Query query=session.createQuery(hql);
  List<Object[]> lists=query.list();
  for(Object[] objs:lists){ syso(objs[0])}
  注意:如果select后面只有一个属性,将返回object类型
  


2以List形式返回选择的属性
   String hql="select new list(s.name, s.tel) from Seller s";
  Query query=session.createQuery(hql);
  List<list> lists=query.list();
  for(List list:lists){ syso(list.get(0))}





3以map形式返回选择的属性
   String hql="select new Map(s.name, s.tel) from Seller s";
  Query query=session.createQuery(hql);
  List<Map> maps=query.list();
  for(Map list:maps){ syso(map.get("name"))}





 
4以自定义类型返回选择的属性(选哪几个属性在类里面建包含这几个属性的构造器)
   String hql="select new Sellor(s.name, s.tel) from Seller s";
  Query query=session.createQuery(hql);
  List<Seller> sellers=query.list();
  for(Seller seller:sellers){ syso(  seller.getName();     )}
   



5以获取独特的结果-distinct关键字
   使用distinct关键字去除查询结果中的重复元素
String hql="select distinct s.xingbie from Seller s";









----------where 限制语句
String hql="from Commodity c where c.price>40";
String hql="from Commodity c where c.price is null";
String hql="from Commodity c where c.price in  (20,40)";
String hql="from Commodity c where c.price between 20 and 40";
字符串匹配
  1 like 关键字
  2 %  任意个字符
    _  一个字符


查询单个对象
  String hql="from Commodity c where c.price =30";


order by关键字
  String hql="from Commodity c order by  price asc";

Java反射

Class反射(万事万物皆对象) (1)Class c1=Foo.class() (2)Class c2=foo1.getClass() (3)Class c3=null;   c3=Class.f...

程序员养成架构师之路

一: 编程基础 不管是C还是C++,不管是Java还是PHP,想成为一名合格的程序员,基本的数据结构和算法基础还是要有的。下面几篇文章从思想到实现,为你梳理出常用的数据结构和经典算法。  1-1 ...

Hibernate——HQL数据查询

Hibernate——HQL数据查询Hibernate Query Language,Hibernate查询语言。 HQL是面向对象的查询语言。HQL的查询主题是映射配置的持久化类及其属性。SQL查...

Hibernate(3)-使用HQL语句进行数据查询

使用HQL语句进行数据查询 -熟练掌握HQL语句的查询 -掌握Criteria查询 为什么使用HQL语句? 因为session.get()或load方法只可以获...

使用Struts2+Hibernate(HQL)添加数据、查询数据

使用Struts2+Hibernate(HQL)添加数据、查询数据1、添加Struts2、Hibernate架构jar包2、修改web.xml文件,添加Struts2支持3、添加Hibernate持久...
  • My_THE
  • My_THE
  • 2017年05月09日 20:50
  • 237

Hibernate之HQL查询

  • 2017年10月21日 14:48
  • 14.47MB
  • 下载

HQL Hibernate查询语言

  • 2014年12月02日 20:57
  • 49KB
  • 下载

hibernate HQL left join on 使用及多表连接取不同表(封装类)字段数据显示解决办法

在使用hibernate时,运用hql语句查询数据,使用join on多表连接查询,不能在hql中使用on,需在hibernate配置文件中配置好。 原本hql语句如下: String sql="s...

Hibernate注解方式、HQL查询

  • 2017年08月17日 16:39
  • 8.17MB
  • 下载

hibernate查询-hql教程

  • 2012年10月10日 13:50
  • 3.89MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:HQL数据查询(Hibernate推荐)
举报原因:
原因补充:

(最多只允许输入30个字)