在Hibernate3.0中废除了find()方法,取而代之的是Query接口

一、绑定参数

1、使用“?”指定参数

通过Query接口可以先设定查询参数,然后通过setXXX()等方法,将指定的参数值填入,而不用每次编写完整的HQL。

Query query = session.createQuery(“from Student s where s.age>? and s.name like ?”)

query.setInteger(0,25);

query.setString(1,”%clus%”);

……………….

2、使用“:“后跟变量的方法设置参数

可以使用命名参数来取代“?“设置参数的方法,这可以不用来依照特定的顺序来设定参数值,比如上面的示例代码也可以写为:

Query query = session.createQuery(“from Student s where s.age>:minAge and s.name like :likeName”)

query.setInteger(minAge,25);

query.setString(likeName,”%clus%”);

………………..

4、setEntity()方法

setEntity()方法把参数与持久化类的示例绑定

Team team = (Team)session.get(Team.class,”aaa565efc767”);

Query query = session.createQuery(“from Student s where s.team>:team”)

query. setEntity(“team”,team);

…………………………..

5、setParameter()方法

setParameter()方法全称是setParameter(String paraName,实例,实例类型),这个方法可以绑定任意类型的参数。如可把上面的改写为:

query.setParameter(“team”,team,Hibernate.entity(Team.class)),其中,Hibernate.entity()指定映射的Hibernate 类型,也可以不要,如:

query.setParameter(“team”,team)

……………..

6、setPropertyies()方法

setPropertyies()的全称是setPropertyies(类实例)。它将类实例的属性名与参数值相对应,如:

Student   stu = new Student();

Stu.setAge(99);

Query query = session.createQuery(“from Student s where s.age=:age”);

query.setProperties(stu);

……………….

二、使用命名查询

可以将HQL语句写在程序之外,以避免硬编码在程序之中,需要的时候可以随时更改,在*.hbm.xml中使用标签,并在之间编写HQL,编写的位置是在节点之后节点之间。如:

/p>

"-//Hibernate/Hibernate Mapping DTD//EN"

"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">

from Student s where s.age>:minAge and s.name like:likeName

]]>

的name属性用来设定查询外部HQL时的名称依据,使用命名查询的源码如下:

Query query = session.getNamedQuery(“namedQueryAgeName”)

query.setInteger(minAge,25);

query.setString(likeName,”%clus%”);

………………..

java query接口_Query接口学习笔记相关推荐

  1. 接口幂等性操作学习笔记

    接口幂等性操作学习笔记 1. 幂等性 2. 什么情况需要幂等 2.1 SQL 天然幂等的情况 2.2 需要幂等操作的情况 3. 解决方案 3.1 token机制 3.2 各种锁机制 3.3 各种唯一约 ...

  2. 《Java并发编程实践》学习笔记之一:基础知识

    <Java并发编程实践>学习笔记之一:基础知识 1.程序与进程 1.1 程序与进程的概念 (1)程序:一组有序的静态指令,是一种静态概念:  (2)进程:是一种活动,它是由一个动作序列组成 ...

  3. Java开发面试高频考点学习笔记(每日更新)

    Java开发面试高频考点学习笔记(每日更新) 1.深拷贝和浅拷贝 2.接口和抽象类的区别 3.java的内存是怎么分配的 4.java中的泛型是什么?类型擦除是什么? 5.Java中的反射是什么 6. ...

  4. Java web与web gis学习笔记(二)——百度地图API调用

    系列链接: Java web与web gis学习笔记(一)--Tomcat环境搭建 Java web与web gis学习笔记(二)--百度地图API调用 JavaWeb和WebGIS学习笔记(三)-- ...

  5. 拉勾网《32个Java面试必考点》学习笔记之十二------架构演进与容器技术

    本文为拉勾网<32个Java面试必考点>学习笔记.只是对视频内容进行简单整理,详细内容还请自行观看视频<32个Java面试必考点>.若本文侵犯了相关所有者的权益,请联系:txz ...

  6. Java程序猿的JavaScript学习笔记(10—— jQuery-在“类”层面扩展)

    计划按例如以下顺序完毕这篇笔记: Java程序猿的JavaScript学习笔记(1--理念) Java程序猿的JavaScript学习笔记(2--属性复制和继承) Java程序猿的JavaScript ...

  7. Java程序猿的JavaScript学习笔记(12——jQuery-扩展选择器)

    计划按例如以下顺序完毕这篇笔记: Java程序猿的JavaScript学习笔记(1--理念) Java程序猿的JavaScript学习笔记(2--属性复制和继承) Java程序猿的JavaScript ...

  8. Java程序猿的JavaScript学习笔记(汇总文件夹)

    最终完结了,历时半个月. 内容包含: JavaScript面向对象特性分析,JavaScript高手必经之路. jQuery源代码级解析. jQuery EasyUI源代码级解析. Java程序猿的J ...

  9. 拉勾网《32个Java面试必考点》学习笔记之二------操作系统与网络知识

    本文为拉勾网<32个Java面试必考点>学习笔记.只是对视频内容进行简单整理,详细内容还请自行观看视频<32个Java面试必考点>.若本文侵犯了相关所有者的权益,请联系:txz ...

  10. 拉勾网《32个Java面试必考点》学习笔记之一------Java职业发展路径

    本文为拉勾网<32个Java面试必考点>学习笔记.只是对视频内容进行简单整理,详细内容还请自行观看视频<32个Java面试必考点>.若本文侵犯了相关所有者的权益,请联系:txz ...

最新文章

  1. Servlet-forward转发
  2. Python的线程/进程间通讯对象分析
  3. CSSE*PTC student tutoring program student lecturers of 2018-2019 Academic Year.
  4. 最新 | Python 官方中文文档正式发布!
  5. 浅析Block的内部结构 , 及分析其是如何利用 NSInvocation 进行调用
  6. 功能表单之树形选择字段类型的高级使用——JEPLUS软件快速开发平台
  7. COM编程之一 组件
  8. Python基础系列讲解——继承派生和组合的概念剖析
  9. access数据库应用系统客观题_随访数据库的建立:易侕DataWeb系统应用
  10. php 记录时间 分不对,如何解决php获取的时间不对的问题
  11. 苹果cms用php几,苹果CMS用的B站播放器
  12. BGP 路径属性 (Path attribute)
  13. 非极大值抑制( Non-max suppression)
  14. 图片放大后很模糊怎么办?
  15. QT之如何添加现有文件
  16. python函数图像绘制、函数不固定_Python中函数图像快速绘制的方法
  17. “第一届区块链产业经济发展年会”拟邀嘉宾名单(部分)
  18. 适合新手的mac电脑使用技巧 苹果电脑的快捷键和使用技巧
  19. burp直接抓取windows微信小程序与公众号数据包
  20. 【seo入门教程】零基础新手学seo必备

热门文章

  1. Java中文语言处理HanLP
  2. 求e的近似值 (15 分)
  3. 博动医疗冲刺港股:9个月亏2亿 高瓴与飞利浦是股东
  4. Optical Flow:Horn-Schunck算法与Lucas-Kanade(LK)算法
  5. 鸿蒙2.0操作系统画面测评,鸿蒙2.0系统是希望也是野心
  6. 鸿蒙系统能不能用在手机,【图片】华为鸿蒙系统的厉害之处在于 你可能非用不可 !【手机吧】_百度贴吧...
  7. 微信小程序自定义导航栏,实现自适应
  8. Mysql-Innodb配置优化
  9. 君正JZ4775芯片处理器介绍
  10. 基于DL的计算机视觉(5)--理解反向传播