`
jsczxy2
  • 浏览: 1273806 次
  • 性别: Icon_minigender_1
  • 来自: 常州
文章分类
社区版块
存档分类
最新评论

hibernate中使用SQLQuery处理一些hibernate不方便处理的问题(表外连接)

阅读更多

一般表外链接hibernate是不建议并且支持不好的,所以尽量使用SQLQuery处理即可。方式如下:

 

	public List<Long> getNotNotifyOrders(){
		return (List<Long>)getHibernateTemplate().execute(new HibernateCallback() {
			public Object doInHibernate(Session session)
					throws HibernateException, SQLException {
				StringBuffer sql = new StringBuffer("select o.`ID` from `order` o left join `notify` n on o.`ID`=n.`ORDER_ID` where n.`ID` is null);
				SQLQuery q = session.createSQLQuery(sql.toString()).addScalar("ID",Hibernate.LONG);
//如果配置有hibernate缓存,那么这里不设false的话会有缓存问题,必须注意
				q.setCacheable(false);
				return q.list();
			}
		});
	}
分享到:
评论

相关推荐

    Hibernate SQLQuery执行原生SQL.docx

    在Java的Hibernate框架中,有时候我们需要执行自定义的SQL查询以获取特定的数据,这时就可以使用SQLQuery接口。本文将深入探讨Hibernate如何通过SQLQuery接口执行原生SQL查询,并展示如何处理查询结果。 一、创建...

    hibernate 执行原生sql的几种方式

    在Java的持久化框架Hibernate中,执行原生SQL(Native SQL)是常见需求,尤其是在处理特定数据库特性或者优化性能时。本篇文章将详细介绍在Hibernate中执行原生SQL的几种方式,以及它们各自的适用场景和优缺点。 1....

    Hibernate调用配置文件中的sql语句

    在Hibernate中,我们可以定义实体类(Entity)来表示数据库表,使用注解或XML配置文件来映射这些实体类与数据库表的关系。 在传统的Hibernate应用中,我们通常使用HQL(Hibernate Query Language)或者Criteria API...

    hibernate将本地SQL查询结果封装成对象

    首先,本地SQL查询(Native SQL)是指直接在Hibernate中使用原生的SQL语句进行查询,而不是使用HQL(Hibernate Query Language)。这允许开发者充分利用SQL的功能,比如进行复杂的统计计算或者处理特定数据库的特性...

    hibernate数据库通用SQL代码

    在Java开发中,Hibernate是一个非常流行的持久化框架,它简化了与数据库的交互,使得开发者可以更专注于业务逻辑而不是底层的SQL操作。本文将详细讲解如何使用Hibernate来编写通用的数据库操作代码,包括插入...

    Hibernate_query查询数据表中的一个字段.

    在Java的持久化框架中,Hibernate是一个非常重要的工具,它提供了ORM(对象关系映射)功能,使得开发者能够更方便地操作数据库。本篇将详细讲解如何使用Hibernate进行查询,特别是针对数据表中的一个特定字段。 一...

    hibernate的查询方式介绍和hibernate的批处理和连接池配置hibernate

    - 连接池可以预先创建一定数量的数据库连接,当应用程序需要访问数据库时可以直接从连接池中获取连接,使用完毕后再归还给连接池。 - **配置** - 常见的连接池有 C3P0 和 DBCP。 - 示例(使用 C3P0): ```xml ...

    Hibernate连接MSSQL2000实例

    【标题】:“Hibernate连接MSSQL2000实例”是一个关于如何在Java应用程序中使用Hibernate框架与Microsoft SQL Server 2000数据库进行交互的教程。这个实例旨在简化初学者的学习过程,避免他们在配置上花费过多的时间...

    HQL(Hibernate Query Language):

    6. **连接查询**:通过JOIN关键字,可以处理多表关联查询,包括内连接(INNER JOIN)、左连接(LEFT JOIN)、右连接(RIGHT JOIN)和全连接(FULL JOIN)。 7. **子查询**:在SELECT或WHERE子句中使用子查询,提供更灵活的...

    hibernate的jar包

    描述中提到"用的挺久了,挺全面的",暗示这个jar包可能包含了Hibernate的核心组件以及一些常用的扩展,比如支持DOM4J库,这是一个用于XML处理的Java库,常在Hibernate中用于读写XML配置文件。另外,还提及了"orcle...

    \Hibernate_query条件查询

    Hibernate支持内连接、外连接等,例如: ```java // HQL query = session.createQuery("from User u join fetch u.addresses where u.age &gt; :age"); query.setParameter("age", 30); // Criteria criteria....

    Hibernate Query Language基础使用详解

    Hibernate Query Language(HQL)是Hibernate官方推荐的查询语言,它是面向对象的,与SQL类似,但更加符合Java编程的思维。HQL使得开发者能够更方便地处理对象关系映射,而无需直接编写SQL语句。在使用HQL时,我们...

    Hibernate-基础联表模板

    综上所述,"Hibernate-基础联表模板"涵盖了Hibernate中关于联表查询的基础知识,包括各种查询方式、关联关系的定义、Fetch策略以及查询结果的处理等,是开发者进行数据库操作的有力助手。通过这个模板,开发者可以...

    Eclipse中Hibernate简单配置和使用

    Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。 Hibernate...

    Hibernate4.1.11中文手册

    Hibernate是一个开源的对象关系映射(ORM)框架,它允许开发者使用面向对象的编程方式来处理数据库操作,极大地简化了Java应用程序与数据库之间的交互。 在手册中,首先会介绍Hibernate的核心概念,包括实体...

    hibernate的映射表生成器

    Hibernate是一个开源的对象关系映射(ORM)框架,它允许Java开发者在数据库操作中使用面向对象的方式,极大地简化了数据库编程。标题中的“hibernate的映射表生成器”是一个图形用户界面(GUI)工具,专门设计用于...

    struts+hibernate+sql server2005分页的小项目

    - **计算总记录数**:使用Hibernate的Criteria或Query接口,不设置分页条件,获取所有记录的总数。 - **设置分页参数**:如每页显示的记录数(pageSize),当前页码(pageNumber)。 - **构建分页查询**:根据...

    hibernate3.zip 包含hibernate3.jar

    8. **持久化类和映射文件**:持久化类是与数据库表对应的Java类,通常包含一些特定的注解或XML映射文件(hibernate-mapping)来定义它们与数据库的映射关系。 9. **懒加载和立即加载**:懒加载是Hibernate的一种...

    hibernate中文文档

    4. **Querying**:Hibernate提供了多种查询方式,包括HQL(Hibernate Query Language,类似于SQL)、Criteria API以及JPQL(Java Persistence Query Language)。这些查询方式允许开发者以面向对象的方式检索数据。 ...

    Hibernate 3.5.2 中文API

    5. **Criteria查询**:除了传统的HQL(Hibernate Query Language)查询,Hibernate还提供了Criteria API进行动态查询,无需编写SQL,通过构建Criteria对象并添加各种限制条件,可以方便地执行复杂查询。 6. **Query...

Global site tag (gtag.js) - Google Analytics