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

JDBC批量保存数据

    博客分类:
  • JDBC
阅读更多
/** 
 *  保存业务公告的网页提示对象列表; 
 * @param voList 
 * @return 
 * @throws DAOException 
 */ 
public int saveBatchWebTipToListBox(final List<WebTipVo> voList) throws DAOException{  
return (Integer)getHibernateTemplate().execute(new HibernateCallback()   {    
public Object doInHibernate(Session s) throws HibernateException,SQLException {    
int retVal=0;  
 
//DataSource ds = SessionFactoryUtils.getDataSource(s.getSessionFactory());  
Connection conn=s.connection();  
PreparedStatement ps=null;  
 
String savesql="insert into WebTipBox(cityId,countyId,startTime,endTime,msgId) values(?,?,?,?,?)";  
try {  
//conn = ds.getConnection();  
 
ps=conn.prepareStatement(savesql);  
for(WebTipVo vo : voList){  
ps.setString(1, vo.getCityId());  
ps.setString(2, vo.getCountyId());  
ps.setTimestamp(3,new Timestamp(vo.getStartTime().getTime()));  
ps.setTimestamp(4, new Timestamp(vo.getEndTime().getTime()));  
ps.setInt(5, vo.getMsgId());  
 
ps.addBatch();  
}//endfor;  
int[] savedNum=ps.executeBatch();  
retVal=savedNum.length;  
logger.info("_saved WebTip records num: "+retVal);  
   
if(ps!=null) ps.close();  
if(conn!=null) conn.close();  
 
} catch (SQLException e) {  
e.printStackTrace();  
if(conn!=null)   
try{conn.close();   
}catch(SQLException esql){  
retVal=0;  
logger.info("_deleteNopassAuditRow() exception,msg:"+esql.getMessage());  
};  

/**
 *  保存业务公告的网页提示对象列表;
 * @param voList
 * @return
 * @throws DAOException
 */
public int saveBatchWebTipToListBox(final List<WebTipVo> voList) throws DAOException{
return (Integer)getHibernateTemplate().execute(new HibernateCallback()   { 
public Object doInHibernate(Session s) throws HibernateException,SQLException { 
int retVal=0;

//DataSource ds = SessionFactoryUtils.getDataSource(s.getSessionFactory());
Connection conn=s.connection();
PreparedStatement ps=null;

String savesql="insert into WebTipBox(cityId,countyId,startTime,endTime,msgId) values(?,?,?,?,?)";
try {
//conn = ds.getConnection();

ps=conn.prepareStatement(savesql);
for(WebTipVo vo : voList){
ps.setString(1, vo.getCityId());
ps.setString(2, vo.getCountyId());
ps.setTimestamp(3,new Timestamp(vo.getStartTime().getTime()));
ps.setTimestamp(4, new Timestamp(vo.getEndTime().getTime()));
ps.setInt(5, vo.getMsgId());

ps.addBatch();
}//endfor;
int[] savedNum=ps.executeBatch();
retVal=savedNum.length;
logger.info("_saved WebTip records num: "+retVal);
 
if(ps!=null) ps.close();
if(conn!=null) conn.close();

} catch (SQLException e) {
e.printStackTrace();
if(conn!=null)
try{conn.close();
}catch(SQLException esql){
retVal=0;
logger.info("_deleteNopassAuditRow() exception,msg:"+esql.getMessage());
};
}

 


本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/wf_0817/archive/2010/01/10/5166143.aspx
<script src="/js/feedbackcount.js" type="text/javascript"></script>
分享到:
评论

相关推荐

    JDBC批量插入 更新 删除等操作

    #### 一、JDBC批量插入 JDBC(Java Database Connectivity)是Java平台中用来标准地连接数据库的技术。通过JDBC,Java应用程序可以与多种类型的数据库进行交互,实现数据的读取、写入等功能。批量操作是指在一次...

    jdbc-批量插入数据

    本文将深入探讨如何使用JDBC进行批量插入数据,这在处理大量数据时能显著提高性能。 批量插入数据是数据库操作中常见的一种优化策略,特别是在数据分析、数据迁移或大数据处理等场景。传统的单条插入方式可能会导致...

    Mybatis与JDBC批量插入MySQL数据库性能测试

    在数据库操作中,批量插入(Batch Insert)是一种提高性能的有效方式,尤其是在处理大量数据时。本文将探讨Mybatis和JDBC在批量插入MySQL数据库时的性能差异,并提供相关的测试资源。 首先,JDBC(Java Database ...

    jdbc批量插入大字段

    使用JDBC,我们可以编写Java代码来执行SQL语句,包括插入数据。对于Blob字段的处理,JDBC提供了一种流式处理的方式,可以有效地处理大对象。 批量插入Blob数据的基本步骤如下: 1. **连接数据库**:使用`...

    java实现jdbc批量插入数据

    本篇文章将详细介绍如何使用Java实现JDBC批量插入数据,并比较三种常见的JDBC批量插入编程方法。 **方法一:使用PreparedStatement加批量的方法** PreparedStatement是Statement的子接口,允许预编译SQL语句,这...

    JDBC连接MySQL数据库批量插入数据过程详解

    "JDBC连接MySQL数据库批量插入数据过程详解" 本文主要介绍了使用JDBC连接MySQL数据库批量插入数据的过程详解,通过示例代码详细介绍了批量插入数据的步骤,对大家的学习或者工作具有一定的参考学习价值。 一、JDBC...

    jdbc批量操作数据分析与实例

    ### JDBC批量操作数据分析与实例 #### 一、引言 在日常软件开发中,数据库操作是必不可少的一部分。其中,批量操作作为一种高效的处理方式被广泛应用于数据处理任务中。本文将通过对一个具体的Java程序示例(使用...

    jdbc批量 (绝对经典)

    ### JDBC批量操作详解:效率与性能的提升策略 在数据库操作中,批量处理是一种常见的优化技术,用于提高数据处理的效率和性能。JDBC(Java Database Connectivity)作为Java应用程序与数据库交互的标准API,提供了...

    三种JDBC批量插入编程方法的比较

    总结来说,选择JDBC批量插入方法应基于数据插入的特性和需求。PreparedStatement适合动态参数,Statement适用于静态SQL,CallableStatement用于存储过程。理解它们的优缺点以及正确使用方式,能有效提升数据库操作的...

    Spring JdbcDaoSupport 批量插入数据

    本文将深入探讨如何利用`JdbcDaoSupport`进行批量插入数据的操作,以及其背后的原理和源码分析。 首先,`JdbcDaoSupport`是`AbstractJdbcDaoSupport`的子类,它提供了对JDBC访问的便捷封装,允许开发者无需直接管理...

    SpringJDBC批量处理数据代码示例

    然后构建了一个插入数据的SQL语句,并设置了占位符`:param1`到`:param4`。最后,调用`batchUpdate`方法,传入SQL语句和参数数组`paramMap`,执行批量插入操作。 2. 更新数据: ```java public void ...

    Hive几种数据导入方式

    在创建表的同时,也可以通过查询的方式直接向表中插入数据。这种方式通常用于初始数据的填充。 **示例**: ```sql CREATE TABLE new_table AS SELECT * FROM existing_table WHERE condition; ``` 这种方式结合了...

    spring jdbc Templatetest 访问mysql数据库,批量插入数据

    本主题将详细讲解如何使用Spring JDBC Template访问MySQL数据库并进行批量插入数据的操作。 首先,我们需要在项目中引入Spring框架的相关依赖,通常包括`spring-context`和`spring-jdbc`。这些可以在Maven或Gradle...

    JDBC的批量处理数据

    在Java数据库连接(Java Database Connectivity,简称JDBC)中,批量处理是一项重要的功能,它能够显著提高应用程序处理大量数据的效率。批量处理允许一次性发送多个SQL语句到数据库,而不是一条一条地执行,从而...

    Java实现mybatis批量插入数据到Oracle

    本篇文章将详细介绍如何利用Java和MyBatis实现批量插入数据到Oracle数据库中。 首先,我们需要理解Oracle数据库的一些基本概念。Oracle是世界上最流行的商业关系型数据库管理系统之一,以其强大的功能和高可靠性而...

    EasyExcel 并发读取文件字段并进行校验,数据写入到新文件,批量插入数据到数据库

    5. **批量插入数据到数据库** 在数据处理过程中,往往还需要将数据批量插入到数据库。EasyExcel提供了一个`executeBatchInsert`方法,可以配合JDBC或其他ORM框架如MyBatis,将数据批量插入到数据库。首先,我们需要...

    批量插入大量数据

    在实际操作中,你可能需要结合具体的技术栈,例如Python的pandas库配合SQLAlchemy,Java的JDBC,或者是Node.js的Sequelize等,使用它们提供的批量插入接口。同时,要关注数据库类型,如MySQL、PostgreSQL、Oracle或...

    JAVA—JDBC数据库查询小程序

    - **Create(创建)**: 使用`INSERT INTO`语句插入新记录。 - **Read(读取)**: 使用`SELECT`语句查询数据,`ResultSet`对象用于存储查询结果。 - **Update(更新)**: 使用`UPDATE`语句修改已有记录。 - **Delete...

    使用javaJDBC连接hive数据,实现简单的操作!

    在成功连接后,你可以使用`Statement`对象执行HQL(Hive Query Language)命令,例如创建表、插入数据、查询等。例如: ```java // 插入数据 String insertQuery = "INSERT INTO test_table VALUES (1, 'John'), (2...

    Hibernate下数据批量处理解决方案

    在Java开发中,尤其是涉及到大数据量的处理时,人们往往会质疑ORM框架,如Hibernate,是否适合进行批量数据操作。然而,实际上,通过适当的技术手段,我们可以有效地解决Hibernate在批量处理时可能出现的性能问题。...

Global site tag (gtag.js) - Google Analytics