- 浏览: 887326 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (687)
- java (127)
- servlet (38)
- struts (16)
- spring (22)
- hibernate (40)
- javascript (58)
- jquery (18)
- tomcat (51)
- 设计模式 (6)
- EJB (13)
- jsp (3)
- oracle (29)
- RUP (2)
- ajax (3)
- java内存管理 (4)
- java线程 (12)
- socket (13)
- path (5)
- XML (10)
- swing (2)
- UML (1)
- JBPM (2)
- 开发笔记 (45)
- Note参考 (15)
- JAXB (4)
- Quartz (2)
- 乱码 (2)
- CSS (2)
- Exception (4)
- Tools (7)
- sqlserver (3)
- DWR (7)
- Struts2 (47)
- WebService (2)
- 问题解决收藏 (7)
- JBOSS (7)
- cache (10)
- easyUI (19)
- jQuery Plugin (11)
- FreeMarker (6)
- Eclipse (2)
- Compass (2)
- JPA (1)
- WebLogic (1)
- powerdesigner (1)
- mybatis (1)
最新评论
-
bugyun:
受教了,谢谢
java 正则表达式 过滤html标签 -
xiongxingxing_123:
学习了,感谢了
java 正则表达式 过滤html标签 -
wanmeinange:
那如果无状态的。对同一个任务并发控制怎么做?比如继承Quart ...
quartz中参数misfireThreshold的详解 -
fanjieshanghai:
...
XPath 元素及属性查找 -
tianhandigeng:
还是没明白
quartz中参数misfireThreshold的详解
条件查询
1.拼字符串
where条件后面,可以用字符串连接组成条件
String hql = " select s.id, s.name from Student s where s.name like '%1%'";
Query query = session.createQuery(hql); List list = query.list(); for (Iterator iter=students.iterator(); iter.hasNext();) { |
2.可以采用 ?来传递参数(索引从0开始)
(1)分开设值
//条件查询,参数索引值从0开始,索引位置。通过setString,setParameter设置参数String hql = "from Users where name=? and passwd=?"; Query query = session.createQuery(hql);
//第1种方式 //query.setString(0, "name1"); //query.setString(1, "password1");
//第2种方式 query.setParameter(0, "name1",Hibernate.STRING); query.setParameter(1, "password1",Hibernate.STRING); List<Users> list = query.list();
for(Users users : list){ System.out.println(users.getId()); } |
(2)方法链
List students = session.createQuery("select s.id, s.name from Student s where s.name like ?") for(Iterator iter=students.iterator(); iter.hasNext();) { |
3.使用 :参数名称的方式传递参数值
//条件查询,自定义索引名(参数名):username,:password.通过 //setString,setParameter设置参数 String hql = "from Users where name=:username and passwd=:password"; Query query = session.createQuery(hql);
//第1种方式 //query.setString("username", "name1"); //query.setString("password", "password1");
//第2种方式,第3个参数确定类型 query.setParameter("username", "name1",Hibernate.STRING); query.setParameter("password", "password1",Hibernate.STRING);
//第3种方式 //query = query.setParameter("username", "name1").setParameter //("password", "password1");
List<Users> list = query.list();
for(Users users : list){ System.out.println(users.getId()); } |
4.支持谓词in,需要使用setParameterList进行参数传递
List students = session.createQuery("select s.id, s.name from Student s where s.id in(:myids)") |
5.在HQL中使用数据库的函数
List students = session.createQuery("select s.id, s.name from Student s where date_format(s.createTime, '%Y-%m')=?") |
6.查询时间段的数据
http://blog.sina.com.cn/s/blog_59c701350100nkuk.html
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); where s.createTime between ? and ?") |
发表评论
-
Criteria查询,DetachedCriteria离线查询 --做综合查询
2011-09-06 00:25 1597通过Session得到Criteria类的对象 Ja ... -
Hibernate批量操作(JDBC批量操作)
2011-09-06 00:24 1293部分内容转自 :http://ga ... -
Hibernate懒加载深入分析
2011-09-06 00:19 1324懒加载可以提高性能吗? 不可以简单的说"能" ... -
getSesson currentSession
2011-09-06 00:15 10001 getCurrentSession创建的session会和 ... -
Hibernate 操作Blob Clob
2011-09-05 23:46 1068Photo.java Java代码 i ... -
Hibernate建表错误,Could not determine type for: java.util.List
2011-04-04 22:19 1641今天遇到 Could not determine type f ... -
Hibernate的fetch="join"和fetch="select"
2011-03-24 14:16 968fetch参数指定了关联对 ... -
Hibernate的Criteria用法总结
2011-03-23 10:53 776最近在项目中使用 Struts 和 Hibernate 进行开 ... -
第29讲--为Spring集成的Hibernate配置二级缓存
2011-03-10 23:16 1100合理的使用缓存策略,往往在web开发中提高性能起到关键作用。 ... -
hibernate抓取策略
2011-02-12 13:23 819Hibernate最让人头大的就是对集合的加载形式。书看了N次 ... -
Hibernate笔记:HQL查询总结(一)——简单属性查询和实体对象查询
2011-02-01 23:38 3493本文一部分转自kuangbaoxu的博文hibernate-- ... -
Hibernate属性延迟加载
2011-02-01 21:28 1011Hibernate3开始增加了通过property节点的la ... -
Hibernate中的cascade和inverse
2011-01-31 00:31 993这两个属性都用于一多对或者多对多的关系中。而inverse特别 ... -
batch_size 和 fetch_size作用
2010-12-01 21:37 1279hibernate抓取策略,,batch-szie在< ... -
hibernate中SQLQuery的addEntity();方法
2010-10-20 10:48 2770如果使用原生sql语句进行query查询时,hibernate ... -
Hibernate的evict方法错误总结
2010-10-14 10:08 1208摘自百度知道:http://zhi ... -
hibernate中get方法和load方法的区别
2010-10-14 09:57 799键字: hibernate get load 区 ... -
Hibernate: 设A引用了B,则删A后可能要evict(A.getB())
2010-10-14 09:56 1000Hibernate: 设A引用了B,如果要先取A删A再取B删B ... -
Hibernate的flush()和evict()总结
2010-10-14 09:53 1323关键字: hibernate flush() evict() ... -
flush,commit,evict
2010-10-14 09:52 921Flush()后只是将Hibernate缓存中的数据提交到数据 ...
相关推荐
《Hibernate笔记完整版》 在Web开发领域,Hibernate作为三大框架之一,扮演着至关重要的角色。本文将全面介绍Hibernate,包括其数据持久化的概念、优缺点对比,以及Hibernate的核心概念和编程步骤。 对象持久化是...
本文将深入探讨Hibernate中两种常用的查询语言——HQL(Hibernate Query Language)与QBC(Query By Criteria),并分析它们各自的优缺点以及适用场景。 #### 二、HQL简介 HQL是一种面向对象的查询语言,它类似于...
《Hibernate框架深度解析——基于黑马程序员2016版教学资料》 Hibernate,作为一个强大的对象关系映射(ORM)框架,极大地简化了Java开发者在数据库操作中的工作。它通过提供数据持久化的对象模型,使得开发者可以...
《Hibernate技术深度剖析——基于黑马程序员2016版讲义与笔记》 Hibernate,作为Java领域中的一个著名持久化框架,为开发者提供了强大的对象关系映射(ORM)功能,极大地简化了数据库操作。本资料集是黑马程序员...
总结起来,"韩顺平hibernate笔记及图解"涵盖了Hibernate的基础概念、核心组件、对象关系映射、查询机制、事务管理以及实体间的关系等内容。通过学习这份笔记,开发者能深入理解Hibernate的工作原理和使用技巧,提升...
5. Criteria API和HQL(Hibernate Query Language):提供了强大的查询能力,允许开发者用面向对象的方式编写查询,而不是直接写SQL。 在四天的学习笔记中,可能涉及的课程内容包括: - Hibernate环境搭建:介绍...
总结来说,Hibernate笔记涵盖了ORM的核心概念,包括配置、对象模型、事务处理、查询、关联映射以及性能优化等多个方面。通过深入学习,你可以掌握如何高效地利用Hibernate进行数据库操作,提升开发效率和代码质量。
6. 缓存机制:了解Hibernate的两级缓存——第一级缓存Session和第二级缓存Region,以及查询缓存的使用,有助于提高应用性能。 7. 深入理解Callback事件:Hibernate支持在特定生命周期阶段触发回调方法,如预加载、...
4. **HQL(Hibernate Query Language)**: Hibernate特有的SQL方言,支持更复杂的查询。 5. **缓存机制**: 第一级缓存(Session级别的)和第二级缓存(SessionFactory级别的),提高性能。 6. **事务管理**: 提供...
在"**Hibernate笔记.pdf**"中,你将深入学习到如何配置Hibernate项目,创建实体,配置映射文件,使用SessionFactory,管理会话,执行查询,以及处理事务等内容。这份笔记对于初学者来说是一份宝贵的参考资料,能够...
《Hibernate学习笔记——马士兵教程解析》 在Java开发领域,ORM(Object-Relational Mapping)框架的使用已经非常普遍,其中Hibernate作为一款优秀的ORM框架,因其强大的功能和易用性深受开发者喜爱。本文将根据马...
Java EE Hibernate 学习笔记是针对企业级Java应用程序开发中的持久化框架——Hibernate进行深入学习的资料集合。Hibernate是一个强大的对象关系映射(ORM)工具,它极大地简化了数据库操作,使得开发者可以使用面向...
在本篇“2023年Java相关课程系列笔记之十四Hibernate学习笔记”中,我们将深入探讨Java开发中常用的持久化框架——Hibernate。这个框架由梁建全老师主讲,旨在帮助开发者更高效、便捷地进行数据库操作,弥补JDBC在...
【hibernate培训第二天】——深入理解Hibernate框架 在软件开发中,ORM(Object-Relational Mapping)框架已经成为连接数据库与应用程序的重要桥梁,而Hibernate作为Java领域中的主流ORM框架,其强大而灵活的功能...
Hibernate 提供了自己的查询语言——HQL(Hibernate Query Language),它是面向对象的,语法类似SQL。此外,还可以使用 Criteria 查询、Query API 或者最新的JPQL(Java Persistence Query Language)。 7. **...
第二天,课程深入到了查询机制,包括HQL(Hibernate Query Language)和Criteria API。HQL是一种面向对象的查询语言,其语法类似于SQL,但更加面向对象,使得我们可以直接按照对象的属性进行查询。Criteria API则...