- 浏览: 990227 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (223)
- JDBC技术 (29)
- Java Base (21)
- SSH框架的集合 (5)
- Javascript部分 (16)
- Sping2.5框架 (6)
- Hibernate框架 (19)
- JDBC中的数据库连接 (5)
- Ajax技术应用 (9)
- Java工具包下载 (3)
- Database (4)
- Java Web (13)
- 我的生活 (4)
- Struts2 (25)
- S2SH (1)
- Prototype (1)
- jfreeChart (5)
- JPA (7)
- JBPM (1)
- JasperReport (6)
- DWR (1)
- freeMark (2)
- IBatis (2)
- FCKeditor (2)
- POI (1)
- JQuery (6)
- JSON (1)
- JavaMail (3)
- Flex (2)
- CSS收藏夹 (1)
- 润乾报表 (2)
- 开源技术 (1)
- Android (2)
- Android_UI (1)
- Android_OS (6)
- Android_OpenLibs (3)
- Volley (1)
- JS_OpenLibs (1)
- Hessian (3)
- OS (1)
最新评论
-
damoluomu:
简单易懂
Java Web开发Session超时设置 -
di1984HIT:
学习了~~~~~~
Java Web开发Session超时设置 -
lord_is_layuping:
...
Java Web开发Session超时设置 -
15111285554:
...
Java Web开发Session超时设置 -
sfg1314:
暂停后重新下载就会报错:ClientAbortExceptio ...
Java Web 文件下载之断点续传
/**
* 多条件组合查询
*/
public List getallByMoreWhere(String name,double price){ List list=null; try { Criteria cri=this.GetSession().createCriteria(TShop.class); if(name!=null && name.length()>1){ cri.add(Restrictions.like("SName", name,MatchMode.ANYWHERE)); } if(price>0){ cri.add(Restrictions.lt("SPrice", price)); } list=cri.list(); } catch (HibernateException e) { throw e; }finally{ this.ColseSession(); } return list; }
测试:
List list=shopdao.getallByMoreWhere("", 50); Iterator cri=list.iterator(); while(cri.hasNext()){ TShop shop=(TShop) cri.next(); System.out.println(shop); }
inner join on查询
/**
* 多对一中的多方的inner join on(主对象可以查出从对象,即使主对象中关与从对象的lazy="true"也是可以把从对象查询出来)
* 以TShop为主,若TShop的TType为空,则查询后没有这条记录。即查询结果都是非空的
* 这种方式List中存放的是Object的数组,Object[]中的元素才是TShop和TType
*/
public List getallByinnerjoinTtype(){ List list=null; try { Query query=this.GetSession().createQuery("from TShop as s inner join s.TType"); list=query.list(); } catch (HibernateException e) { throw e; }finally{ this.ColseSession(); } return list; }
测试:
/* 多对一中的多方的inner join on(主对象可以查出从对象,即使主对象中关于从对象的lazy="true"也是可以把从对象查询出来)
* 以TShop为主,若TShop的TType为空,则查询后没有这条记录。即查询结果都是非空的
*/
List list=shopdao.getallByinnerjoinTtype(); Iterator iter=list.iterator(); while(iter.hasNext()){ Object[] obj=(Object[]) iter.next(); TShop shop=(TShop) obj[0]; TType type=(TType) obj[1]; System.out.println(shop.getSName()+" "+shop.getSPrice()+" 所属类别"+shop.getTType().getTName()); System.out.println(type.toString()); }
inner join fetch查询
/**
* 多对一中的多方的inner join fetch(主对象可以查出从对象,即使主对象中关与从对象的lazy="true"也是可以把从对象查询出来)
* 以TShop为主,若TShop的TType为空,则查询后没有这条记录。即查询结果都是非空的
* 这种方式List中存放的是TShop对象,TShop.TType对象是非空的
*/
public List getallByinnerjoinTtype2(){ List list=null; try { Query query=this.GetSession().createQuery("from TShop as s inner join fetch s.TType"); list=query.list(); } catch (HibernateException e) { throw e; }finally{ this.ColseSession(); } return list; }
测试:
/**
* 用的from TShop as s inner join fetch s.TType
* 这样list中存放的就是TShop对象,但它会把一方也查出来,
* 同样如查TShop对象对应的TType为null,这个TShop也不会查询出来,即查询结果都是非空的。
*/
List list=shopdao.getallByinnerjoinTtype2(); Iterator iter=list.iterator(); while(iter.hasNext()){ //这样就是错的 //Object[] obj=(Object[]) iter.next(); //TShop shop=(TShop) obj[0]; //TType type=(TType) obj[1]; //System.out.println(shop.getSName()+" "+shop.getSPrice()+" 所属类别"+shop.getTType().getTName()); //System.out.println(type.toString()); TShop shop=(TShop) iter.next(); System.out.println(shop.getSName()+" "+shop.getSPrice()+" 所属类别"+shop.getTType().getTName()); }
发表评论
-
Hibernate的HQL not like查询
2009-09-24 18:20 9756今天想用Hibernate的Restriction ... -
Hibernate Gossip: Bag
2009-09-14 16:37 1438Bag是集合,与Set不同的是,Bag允许重复的元素,在Jav ... -
hibernate的Restrictions用方说明
2009-06-15 21:09 1893方法 说明 Restric ... -
Hibernate完成常用的JDBC操作下
2009-05-29 16:38 1423一方: package com.mengya.dao; i ... -
Hibernate完成常用的JDBC操作上
2009-05-29 16:35 1884package com.mengya.dao; import ... -
Native SQL查询
2009-04-29 22:02 1555你也可以使用你的数据 ... -
hibernate调用存储过程来分页
2009-04-29 07:56 3725虽然Hibernate帮助我们完成了分页功能,但若 ... -
Hibernate中实体对象的生命周期
2009-04-21 22:58 1400实体对象的生命周期在Hibernate应用中是一个很关键的概念 ... -
HibernateTemplate的常规用法
2009-04-21 22:55 1317HibernateTemplate提供非常多的常用方法来完成基 ... -
cascade与inverse的作用
2009-04-21 22:52 1758Cascade:用来说明当对主对象进行某种操作时是否对其关联的 ... -
Hibernate一对一的使用
2009-04-21 22:50 1783数据库:create table student( id ... -
Hibernate多对多说明
2009-04-21 22:47 1391数据库:--学生表create table stu( s_i ... -
query.iterate()与query.list()的区别
2009-04-21 22:46 1999Query query=this.GetSession().c ... -
Hibernate中的Query一些基本用法
2009-04-21 22:45 5028/*** 添加*/public void save(Stu s ... -
Hibernate中Criteria的使用
2009-04-21 22:42 2801/*** 使用Criteria全查询*/public List ... -
Hibernate关联表特殊查询(一方)inner join fetch,left join fet
2009-04-21 22:40 18037inner join fetch/*** 一对多中的一方inn ... -
get和load的区别
2009-04-20 17:20 1196(1)load()方法从来就是假定数据在数据库中是存在的,在使 ... -
Hibernate中的ORM关系映射主键生成方式即(Generator的class值)
2009-04-20 17:18 2132主键产生器可选项说明 ...
相关推荐
### Hibernate多表联合查询详解 #### 一、引言 在实际项目开发中,我们经常需要处理复杂的数据库查询,特别是涉及到多个表之间的关联查询。Hibernate作为一款流行的Java持久层框架,提供了一种非常便捷的方式来处理...
根据提供的文件信息,我们可以深入探讨Hibernate中的连表查询方法及其应用。下面将详细介绍与标题、描述及部分代码相关的几个核心知识点: ### Hibernate 连表查询基础 Hibernate 是一个开源的对象关系映射(ORM)...
总结,"Hibernate 多表连接分页查询示范项目"是一个实用的示例,它展示了如何在实际应用中利用 Hibernate Criteria API 实现复杂查询和分页,对于学习和掌握 Hibernate 的高级特性和数据库操作技巧非常有帮助。...
Hibernate HQL关联查询遵循了SQL中连接查询的概念,但在语法上有所区别,使其更符合面向对象编程的习惯。Hibernate支持以下几种连接查询方式: 1. **内连接(Inner Join)**:`INNER JOIN` 或 `JOIN` ```java ...
hibernate关联查询 实例源码 java web 如果不明白hibernate关联查询不明白的可以看看,保证马上学会,注释,数据库都有,很简单易学的源码,谢谢下载!
hibernate,hibernate,hibernate,hibernate,hibernate,hibernate,hibernate,hibernate,hibernate,hibernate,hibernate,hibernate,hibernate,hibernate,hibernate,包含4个说明文档,分别详细解说了hibernate关联映射的...
hibernate 多表查询 hibernate 多表不同于一般的sql嵌套查询,嵌套查询是不支持的,所以必须要配置好才能实现多表!只要配置好了,还是特别好用的
在处理多表关联时,Hibernate提供了一种高效且灵活的方法,尤其是当涉及到中间表的情况。中间表通常用于实现多对多(Many-to-Many)的关系,比如在一个用户和角色的关系中,一个用户可以有多个角色,一个角色也可以...
在Hibernate中,这需要通过一个中间表(也称为关联表或连接表)来实现,对应的注解是@ManyToMany,同时需要定义@JoinTable,包括joinColumns和inverseJoinColumns来指定双方的引用。 在"HibernateSelect"这个文件名...
NULL 博文链接:https://lf6627926.iteye.com/blog/1176785
本文将深入探讨“hibernate关联映射实例”中的关键知识点,包括一对多、多对多和继承映射,这些都是Hibernate中至关重要的概念。 1. **一对多关联映射**: 在现实世界中,一个实体可能会与多个其他实体相关联,...
总结,"Hibernate基于连接表的一对多单向关联"涉及到的主要知识点包括:数据库设计的一对多关系、Hibernate的实体映射、单向关联的配置、以及如何在Java代码中操作和查询这种关联。理解并熟练应用这些知识点,对于...
对象方式的查询是Hibernate的一大特色,它通过建立实体类间的关联关系来实现多表查询。这种方式更加面向对象,易于理解和维护。例如,如果Table1和Table2存在一对多关系,我们可以在Table1的实体类中定义一个Table2...
在处理多表关联时,Hibernate提供了多种关联类型,包括一对一(OneToOne),多对一(ManyToOne),一对多(OneToMany)和多对多(ManyToMany)。本文将详细介绍这些关联配置以及如何解决可能出现的错误。 **一对一关联...
本文将深入探讨Hibernate中的关联关系解除,包括一对多、多对一、一对一以及多对多关系的解除,以及如何通过源码理解和使用相关工具进行操作。 一、Hibernate关联关系介绍 在Hibernate中,关联关系主要包括以下几种...
9. Hibernate 一对一外键双向关联、主键双向关联、连接表双向关联、一对多外键双向关联、一对多连接表双向关联、多对多双向关联: 这些关联方式与单向关联类似,区别在于两个实体类都知道彼此的关联。在双向关联中...
Hibernate关联关系是Java持久化框架Hibernate中的核心概念,它允许我们在数据库中建立对象之间的关系映射,以便在程序中操作对象时,可以自动处理与数据库的交互。本篇将深入探讨Hibernate的四种主要关联关系:一对...
关于hibernate的关联操作 分享下