`

Hibernate 原生查询

阅读更多
public void sqlQuery() {
		
		Session session = null ;
		Transaction tx = null;
		try {
			session = HibernateSessionFactory.getSession();
			tx = session.beginTransaction();
			String sql = "select distinct t.*,r.rolename as ronm from t_user t,t_user_role b, t_role r where t.userid = b.userid and b.roleid = r.roleid ";
			Query query = session.createSQLQuery(sql).addEntity("t",TUser.class).addScalar("ronm",Hibernate.STRING);
			//Query query = session.createSQLQuery("select * from t_user").addEntity(TUser.class);
			//Query query =  session.createQuery("from TUser");
			/*List<TUser> list = query.list();
			System.out.println(list.size());
			for (TUser user : list) {
				System.out.println(user.getUsername());
			}*/
			List list = query.list();
			for (Object object : list) {
				Object[] obj = (Object[]) object;
				System.out.println(obj[0]);
				System.out.println(obj[1]);
			}
			 
			
			tx.commit();
			session.flush();
		} catch (Exception e) {
			e.printStackTrace();
			System.out.println("异常了");
		}finally{
			HibernateSessionFactory.closeSession();
		}
			
			
	}

 

分享到:
评论

相关推荐

    hibernate执行原生sql语句

    然而,在一些情况下,我们需要直接执行原生 SQL 语句,而不是使用 Hibernate 的查询语言(HQL)。本文将介绍如何使用 Hibernate 执行原生 SQL 语句。 为什么需要执行原生 SQL 语句 在实际开发中,我们可能需要执行...

    Hibernate 函数 ,子查询 和原生SQL查询

    虽然Hibernate提供了ORM的方式,但有时我们可能需要使用原生的SQL查询来访问数据库,尤其是当ORM无法满足复杂需求时。在Hibernate中,可以通过以下方式执行原生SQL: 1. `Session.createSQLQuery(sql)`:创建一个...

    hibernate 执行原生sql的几种方式

    虽然`Criteria API`主要是为了使用Hibernate的ORM功能,但也可以通过`Projections.sqlProjection()`执行原生SQL投影,从而创建自定义的查询。 ```java Criteria criteria = session.createCriteria(User.class); ...

    注意hibernate查单一字段和查两个以上的字段返回的结果

    标题中的“注意hibernate查单一字段和查两个以上的字段返回的结果”暗示了这个话题将围绕Hibernate框架在查询数据时,根据查询条件的不同(单个字段与多个字段)可能产生的不同结果进行讨论。Hibernate是Java领域的...

    Hibernate中的查询:HQL、Criteria、原生SQl

    本篇文章将深入探讨Hibernate中的三种主要查询方式:HQL(Hibernate Query Language)、Criteria API以及原生SQL。 一、HQL(Hibernate Query Language) HQL是Hibernate提供的一种面向对象的查询语言,它类似于SQL...

    Hibernate 原生通用DAO

    **Hibernate原生通用DAO**是基于Hibernate框架设计的一种简化数据访问操作的方式,它模仿了Spring框架中的`HibernateTemplate`类,旨在提供一个简单易用的DAO(Data Access Object)层,方便开发人员进行数据库操作...

    Hibernate之原生Native SQL查询

    然而,尽管Hibernate提供了强大的HQL(Hibernate Query Language)和Criteria API,但在处理某些特定的、复杂的SQL查询时,可能无法满足需求,这时就需要用到“原生的Native SQL查询”。 Native SQL查询允许我们...

    Hibernate ORM 5.3.7.Final User Guide

    30. 旧版Hibernate原生查询(Legacy Hibernate Native Queries):手册中说明了如何处理旧版的原生查询。 31. 参考资料(References):提供了对相关文档和资源的引用。 由于文档内容是通过OCR技术扫描得到,不可避免...

    Hibernate5.2.11高清版,最新版本

    数据库迁移(Migration)和遗留模型引导(Legacy Bootstrapping)、迁移(Migration)、域模型(Legacy Domain Model)、Hibernate Criteria查询(Legacy Hibernate Criteria Queries)、Hibernate原生查询(Legacy ...

    Hibernate连表查询 Hibernate连表查询

    根据提供的文件信息,我们可以深入探讨Hibernate中的连表查询方法及其应用。下面将详细介绍与标题、描述及部分代码相关的几个核心知识点: ### Hibernate 连表查询基础 Hibernate 是一个开源的对象关系映射(ORM)...

    spring+hibernate,自己封装了原生sql的处理,模仿mybatis使用

    这样的设计提供了更多的灵活性,尤其是在处理复杂查询或性能调优时。开发者可能为了项目需求,或是对现有MyBatis的扩展或简化,创建了自己的SQL解析器,以便在Spring+Hibernate的环境中更便捷地使用自定义SQL。 在...

    hibernate子查询

    另一种方法是改用原生的SQL查询,利用Hibernate的`Session.createSQLQuery()`方法来执行,但这可能意味着失去了部分ORM(对象关系映射)的便利性。 然而,如果你坚持使用HQL并且不想采用上述替代方案,你可能会需要...

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

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

    hibernate查询详解

    对于不熟悉HQL或需要保持SQL原生特性的开发者,可以直接使用SQL查询。创建`SQLQuery`对象并执行SQL语句,然后将结果映射到实体类: ```java SQLQuery q = s.createSQLQuery("select * from user").addEntity(User...

    hibernate 查询?Hibernate的HQL查询

    【描述】:在ORM框架Hibernate中,数据查询和检索是一个核心功能,它提供了多种查询方式,包括标准化对象查询(Criteria Query)、Hibernate查询语言(HQL)和原生SQL查询。其中,HQL作为官方推荐的查询方式,具有...

    HQL是hibernate自己的一套查询

    根据提供的标题、描述以及部分代码内容,我们可以了解到这段材料主要涉及的是Hibernate框架中的HQL(Hibernate Query Language)查询语言的使用。接下来将详细介绍HQL的相关知识点。 ### HQL概述 HQL是Hibernate...

    Hibernate查询解决方案

    - **SQL 查询**:Hibernate 也支持原生 SQL 查询,可以通过 `createSQLQuery` 方法实现。 ```java SQLQuery query = session.createSQLQuery("SELECT * FROM user WHERE name = ?"); query.setString(0, name); ...

    hibernate将本地SQL查询结果封装成对象(最终)

    使用本地sql语句查询后,无需再使用Object对查询结果进行强制转换,而是直接将查询结果放到实体Bean里了。 PS: 其实只有一版,这里只所以叫最终版是因为该附件我上传了好几天传不上去,到最后报告说‘资源已经存在...

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

    ### Hibernate 查询方式与批处理及连接池配置详解 #### 一、Hibernate 查询方式介绍 Hibernate 是一款优秀的 ORM(对象关系映射)框架,它能够极大地简化数据库操作,并提供多种查询方式来满足不同的业务需求。 #...

Global site tag (gtag.js) - Google Analytics