`
jiaxy917
  • 浏览: 31545 次
  • 性别: Icon_minigender_1
  • 来自: 郑州
社区版块
存档分类
最新评论

Hibernate执行原始sql(备忘)

阅读更多
前段时间在开发中,在开发遇到一个问题,就要批量更新数据库中的数据,开始采用的是把数据库中要更新的数据,通过Hibernate创建对象的方式加载到内存中,然后执行相应的更新,后来发现这样是有问题的,在数据量少的情况下,效率还可以,如果要更新的数据量大的时候,执行速度就很慢了,究其原因,主要把要更新的数据通过创建对象的方式加载到内存中的时候耗费了大量的内存资源,才导致效率低下。幸亏发现的早,如果该应用上线一段时间,数据量很大的时候,在执行与之相关的操作时,就有可能导致系统崩溃。所以需要优化,因为在本应用中是批量更新,所以就想到用原始的SQL语句去执行更新。因为本应用用的是Hibernate,所以就涉及到如何用Hibernate来执行原始SQL的问题。以下是我采用的做法:
 public void batchUpdate(String year,String state) throws Exception {
    	SessionFactory sessionFactory=getHibernateTemplate().getSessionFactory();
         Session session=sessionFactory.openSession();
    	Transaction tx=session.beginTransaction();
    	Connection conn=session.connection();
    	PreparedStatement stmt=conn.prepareStatement("update regioncountyfactory t set t.state="+state+" where t.year="+year);  
    	stmt.executeUpdate();
    	tx.commit();
    	    }

这样做其实就还原到原始JDBC的做法了,执行原始的SQL自然不在话下了。
分享到:
评论

相关推荐

    hibernate执行原生sql语句

    "hibernate执行原生sql语句" Hibernate 是一种流行的 ORM(Object-Relational Mapping)框架,用于将 Java 对象映射到关系数据库中。然而,在一些情况下,我们需要直接执行原生 SQL 语句,而不是使用 Hibernate 的...

    hibernate 执行原生sql的几种方式

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

    hibernate执行外部sql

    标题“hibernate执行外部sql”指的是使用Hibernate框架执行存储在外部文件中的SQL语句。通常,Hibernate以其对象关系映射(ORM)能力著称,允许开发者通过Java对象来操作数据库,但有时我们仍需直接执行SQL,特别是...

    hibernate实现动态SQL查询

    本篇文章主要探讨如何利用Hibernate实现动态SQL查询,结合XML配置和FREEMARKER模板引擎来生成执行的SQL语句。 一、Hibernate简介 Hibernate作为一款强大的持久层框架,它简化了Java应用程序与数据库之间的交互。...

    hibernate显示不带?的完整sql

    这些配置会捕获Hibernate执行的SQL语句及其参数绑定,从而在控制台看到完整的、参数化的SQL。 在开发环境中,这样的配置非常有用,因为它能帮助我们理解查询行为,定位潜在的性能瓶颈,或者检查数据是否按照预期...

    Struts 1.1、Hibernate 3.0和SQL Server 2005数据库驱动包

    Struts 1.1、Hibernate 3.0 和 SQL Server 2005 数据库驱动包是构建基于Java的企业级Web应用程序的关键组件。这些技术在2000年代中期广泛应用于开发面向服务架构(SOA)和模型视图控制器(MVC)模式的系统。 Struts...

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

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

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

    当我们需要执行一些特殊的、复杂的或者非标准的SQL查询时, Hibernate的本地SQL查询功能就显得尤为实用。本文将深入探讨如何使用Hibernate将本地SQL查询的结果封装成对象。 首先,本地SQL查询(Native SQL)是指...

    hibernate数据库通用SQL代码

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

    Hibernate 分页示例 SQLServer 数据库

    一个基于Hibernate 和 SQLServer 数据库的分页示例,所有文件和数据库备份都在,只是速度不怎么快,如果加上自动生成下拉框,速度就更慢了,单表、10008条测试数据,如果哪位大侠改进了查询速度望告之:vni2007@163....

    hibernate3连接sql server的例子

    **hibernate3连接sql server的例子** 在Java开发中,Hibernate是一个非常流行的对象关系映射(ORM)框架,它简化了数据库操作,使得开发者可以用Java对象来操作数据库,而无需直接编写SQL语句。本例将详细介绍如何...

    Hibernate+本地SQL查询SQLQuery宣贯.pdf

    在某些情况下,开发者可能需要使用原生SQL查询来执行特定的数据库操作,这时就可以利用Hibernate的SQLQuery功能。本文将详细讲解如何使用Hibernate的SQLQuery进行本地SQL查询。 首先,创建SQLQuery实例是通过...

    Hibernate中Sql语句

    给定代码示例中的`ProductBoxLogDaoImpl`类展示了如何在Hibernate中执行原生SQL查询,并将结果转换为Java对象列表。 ##### 1. 创建SQLQuery对象 ```java SQLQuery query1 = session.createSQLQuery(sql); ``` 这里...

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

    - `Session`接口:执行SQL查询的主要入口点,它是Hibernate的核心接口,提供了打开、关闭连接,以及执行查询的方法。 - `SQLQuery`对象:通过`Session.createSQLQuery()`方法创建,用于执行自定义SQL查询。 - ...

    Hibernate SQLQuery执行原生SQL.docx

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

    Hibernate生产SQL语句

    Hibernate会根据这些查询语句动态生成对应的SQL,并执行在数据库上。这极大地简化了数据库操作,同时保持了代码的可读性和可维护性。 模仿Hibernate生成SQL语句,我们可以从以下几个方面入手: 1. **实体类...

    让hibernate输出sql语句参数配置.doc

    hibernate.dialect 是一个 Hibernate Dialect 类名,允许 Hibernate 针对特定的关系数据库生成优化的 SQL。其取值为 full.classname.of.Dialect。 2. hibernate.show_sql hibernate.show_sql 参数用于输出所有 SQL...

    hibernate 自动导入 sql 文件 import.sql 国际化编码的问题的解决方案

    在使用Hibernate框架时,经常需要在项目启动初期或者数据库更新时自动执行一些SQL脚本(如DDL脚本)来创建或更新数据库结构。这些脚本通常会放在`import.sql`文件中,并且位于项目的类路径(classpath)根目录下。...

    mybatis,ibatis,hibernate 显示查询SQL

    在iBatis中,同样可以通过配置日志系统,如log4j,查看执行的SQL语句,这对于调试和性能优化非常有用。 **Hibernate** Hibernate 是一个全面的ORM框架,提供了更强大的对象关系映射功能。它不仅处理SQL的生成,还...

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

    其中,`hibernate.show_sql`和`hibernate.format_sql`分别控制是否打印SQL以及是否格式化输出。 2. **创建SQL查询**:在映射文件(.hbm.xml)中,我们可以为实体类定义一个或多个`<sql-query>`标签来存放自定义SQL...

Global site tag (gtag.js) - Google Analytics