`

java使用oracle数据库进行批量插入操作

    博客分类:
  • java
阅读更多
Connection conn;
Statement stat;
ResultSet rs;
ResultSetMetaData rsmd;
PreparedStatement pstat;

/**
* 插入数据库(批量)
* */

public int addShopInfoList(List<Shop_Info_Model> list){
try {
        //获取表名
Properties info = new Properties();
info.load(new FileInputStream(new File("jdbc.properties")));
String table_name= info.getProperty("table_name");
System.out.println(table_name);
long start = System.currentTimeMillis();//开始时间
conn=JdbcUtil.getConnection();
conn.setAutoCommit(false);
String sql ="insert into "+table_name+" " +
    "(shop_name,shop_url,area,phone,address,ev_num,bad_num,score,pt_name,fp," +
    " open_date,city,sales,code,lon,lat,update_zt,img_zz_count,is_yyzz,is_xkz," +
    " is_lhfj,csdj,gldj,jcrq,dwmc,xkzh,fddbr,jydz,ztyt,jyfw," +
    " yxq,fl,img_url)" +
    " values" +
    "(?,?,?,?,?,  ?,?,?,?,?," +
    " ?,?,?,?,?,  ?,?,?,?,?," +
    " ?,?,?,?,?,  ?,?,?,?,?," +
    " ?,?,?)";
pstat= conn.prepareStatement(sql);

for (Shop_Info_Model shopInfoModel:list) {//批量添加
System.err.println(shopInfoModel.getShop_name());
//Map map=(Map) list.get(i);
//System.out.println(map);
pstat.setString(1, shopInfoModel.getShop_name());
pstat.setString(2, shopInfoModel.getShop_url());
pstat.setString(3, shopInfoModel.getArea());
pstat.setString(4, shopInfoModel.getPhone());
pstat.setString(5, shopInfoModel.getAddress());
pstat.setString(6, shopInfoModel.getEv_num());
pstat.setString(7, shopInfoModel.getBad_num());
pstat.setString(8, shopInfoModel.getScore());
pstat.setString(9, shopInfoModel.getPt_name());
pstat.setString(10, shopInfoModel.getFp());
pstat.setString(11, shopInfoModel.getOpen_date());
pstat.setString(12, shopInfoModel.getCity());
pstat.setString(13, shopInfoModel.getSales());
pstat.setString(14, shopInfoModel.getCode());
pstat.setString(15, shopInfoModel.getLon());
pstat.setString(16, shopInfoModel.getLat());
pstat.setString(17, shopInfoModel.getUpdate_zt());
pstat.setString(18, shopInfoModel.getImg_zz_count());
pstat.setString(19, shopInfoModel.getIs_yyzz());
pstat.setString(20, shopInfoModel.getIs_xkz());
pstat.setString(21, shopInfoModel.getIs_lhfj());
pstat.setString(22, shopInfoModel.getCsdj());
pstat.setString(23, shopInfoModel.getGldj());
pstat.setString(24, shopInfoModel.getJcrq());
pstat.setString(25, shopInfoModel.getDwmc());
pstat.setString(26, shopInfoModel.getXkzh());
pstat.setString(27, shopInfoModel.getFddbr());
pstat.setString(28, shopInfoModel.getJydz());
pstat.setString(29, shopInfoModel.getZtyt());
pstat.setString(30, shopInfoModel.getJyfw());
pstat.setString(31, shopInfoModel.getYxq());
pstat.setString(32, shopInfoModel.getFl());
pstat.setString(33, shopInfoModel.getImg_url());
pstat.addBatch();
}
pstat.executeBatch(); //批量执行预定义SQL

conn.commit();//提交事务
//pstat.close();
clojdbc();   //关闭连接
long end = System.currentTimeMillis();
System.out.println("批量插入需要时间:"+(end - start)); //批量插入需要时间:24675
return 1;
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
         return 0;
    }
/**
* 关闭数据库
* */

public void clojdbc() {
try {
if (rs != null)
rs.close();
if (stat != null)
stat.close();
if (conn != null)
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}

分享到:
评论

相关推荐

    java代码oracle数据库批量插入

    ### Java代码实现Oracle数据库批量插入的关键知识点 #### 1. JDBC连接配置 - **JDBC URL**: `jdbc:oracle:thin:@IP:1521:orcl`,这里的URL指定了连接到Oracle数据库的方式。其中`@IP:1521:orcl`中的IP是指数据库...

    oracle数据库中批量插入问题

    2. **使用PL/SQL或外部编程语言(如C#、Java等)**:通过编程接口(如ODBC、JDBC、Oracle Data Provider for .NET等)进行批量插入操作。这种方式更灵活,可以适应更复杂的数据处理需求。 ### C#代码示例解析 提供...

    java批量插入Oracle数据方法

    在Java中,批量插入数据到Oracle数据库主要依赖于`PreparedStatement`对象,该对象允许我们预编译SQL语句并多次执行,从而提高效率。相比于单条插入,批量插入减少了网络往返次数,提高了整体的吞吐量。 ### 二、...

    图片批量导入oracle数据库

    总之,批量导入图片到Oracle数据库是一项涉及到Java编程、JDBC连接、SQL操作以及文件处理的任务。掌握这些技能对于处理大量图片数据的数据库应用至关重要,无论是Web应用、数据分析还是其他领域。通过理解和实践,你...

    Java用JDBC实现对Oracle数据库操作

    标题“Java用JDBC实现对Oracle数据库操作”主要涉及Java编程语言如何利用Java Database Connectivity (JDBC) API来与Oracle数据库进行交互。JDBC是Java中用于与各种数据库通信的标准接口,而Oracle数据库是一个广泛...

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

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

    java操作Oracle数据库——ARRAY、TABLE类型批量入库

    本篇将详细介绍如何利用Java操作Oracle数据库,特别是如何利用ARRAY和TABLE类型进行批量插入。 首先,了解Oracle的ARRAY和TABLE类型。ARRAY类型是固定大小的一维数组,可以存储相同类型的元素。TABLE类型则更加灵活...

    Java使用Mybatis将数据批量插入到Oracle

    Java实现使用Mybatis将数据批量插入到Oracle数据库,并且可以使用Oracle序列来生成主键

    dbutils + oracle 增删改查批量插入示例

    总的来说,`dbutils + oracle 增删改查批量插入示例`是一个很好的学习资源,它帮助开发者掌握如何在Java项目中有效地进行数据库操作,尤其是在处理大数据量时,批量插入的优势尤为明显。通过理解和实践这个示例,...

    Oracle中多表关联批量插入批量更新与批量删除操作

    在Oracle数据库中,进行多表关联的批量插入、批量更新和批量删除操作是常见的数据库管理任务,尤其是在处理大量数据时,这些操作能显著提高效率并减少资源消耗。本文将详细探讨这三个方面,并通过实例代码来展示如何...

    jdbc批量插入大字段

    在Oracle数据库中,Blob类型用于存储大量的二进制数据...总之,批量插入大字段是处理大量Blob数据的关键策略,通过JDBC提供的批处理功能,结合合理的事务管理和内存管理,可以显著提升Oracle数据库中的大数据插入效率。

    java链接oracle 数据库驱动jar

    2. **批处理**:对于批量插入或更新操作,使用JDBC的批处理功能可以显著提高效率。 3. **预编译语句**:使用`PreparedStatement`可以提高执行效率,并防止SQL注入攻击。 总的来说,ojdbc6-12.1.0.2.0.jar是Java连接...

    JXL(Java操作Excel文件Oracle数据库)

    综上所述,"JXL(Java操作Excel文件Oracle数据库)"是一个关于Java编程如何借助JXL库处理Excel文件并与Oracle数据库进行数据交换的主题。这个过程涵盖了文件I/O、数据库连接、JDBC操作以及数据处理等多个方面,对于...

    ORACLE数据库中插入大字段数据的解决方法

    总结来说,处理ORACLE数据库中的大字段数据时,应关注存储模式选择、批量操作、绑定变量、流接口以及参数调整等优化手段。同时,通过分析`MysqlToOracle.java`源码,我们可以学习到如何在Java环境下进行跨数据库的...

    json格式数据到入oracle数据库java源码

    - 在批量插入时,使用合适的事务粒度能确保数据的一致性。例如,可以将一定数量的插入操作作为一个事务,如果出现错误,回滚整个事务。 - 考虑设置合适的隔离级别,如READ COMMITTED或SERIALIZABLE,以适应并发...

    java 多线程操作数据库

    示例代码中使用了JDBC(Java Database Connectivity)API来建立与Oracle数据库的连接,并通过`DriverManager.getConnection()`方法获取连接。由于数据库连接是一种昂贵的资源,应避免在每个线程中重复创建连接,通常...

    mybatis使用annotation在mysql,oracle上进行批量处理

    本文将详细讲解如何使用MyBatis的注解方式在MySQL和Oracle数据库上实现批量处理,旨在提高数据操作的效率。 首先,我们要理解MyBatis的核心原理,它是一个基于Java的持久层框架,通过XML或注解来映射SQL语句,简化...

    MyBatis批量插入数据到Oracle数据库中的两种方式(实例代码)

    除了使用INSERT ALL语句外,我们还可以使用UNION ALL语句来批量插入数据到Oracle数据库。以下是示例代码: ```xml &lt;insert id="addList" parameterType="java.util.List" useGeneratedKeys="false"&gt; INSERT INTO T_...

Global site tag (gtag.js) - Google Analytics