注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

一线天色 天宇星辰

天下武功,唯快不破

 
 
 

日志

 
 

Java批量插入总结  

2011-03-18 22:12:27|  分类: 软件开发 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

最近用到ibatis批量插入数据,以前都是应jdbc实现批量插入,现总结如下< xmlnamespace prefix ="o" ns ="urn:schemas-microsoft-com:office:office" />

Ibatis使用sqlmap批量插入

<insert id="insertInvoice" parameterClass="commissionOutCashOrder">

       insert into passport.invoice (

           outcash_no,

           invoice_head,

           invoice_no,

           invoice_balance,

           create_time,

           remark

        )VALUES

        <iterate property="invoiceList" conjunction="," >

        (

           #outCashNo#,

           #invoiceList[].invoiceHead#,

           #invoiceList[].invoiceNo#,

           #invoiceList[].invoiceBalance#,

           getdate(),

           #invoiceList[].remark#

        )

         </iterate>

    </insert>

    -----------------------------------------------------------------

    <insert id="insertCommissionTax" parameterClass="commissionOutCashOrder">

        INSERT INTO

        passport.commission_tax (

           outcash_no,

           min_tax,

           max_tax,

           tax_point,

           tax_balance,

           time_add,

           time_edit,

           remark

        )VALUES

        <iterate property="commissionTaxList" conjunction="," >

        (

           #outCashNo#,

           #commissionTaxList[].minTax#,

           #commissionTaxList[].maxTax#,

           #commissionTaxList[].taxPoint#,

           #commissionTaxList[].taxBalance#,

           getdate(),

           getdate(),

           #commissionTaxList[].remark#

 

        )

        </iterate>

     </insert>

JDBC实现批量插入如下

 

package com.yhj.dao;

 

import java.sql.Connection;

import java.sql.PreparedStatement;

import java.sql.SQLException;

import java.util.List;

import com.yhj.pojo.User;

import com.yhj.util.DBConnection;

/**

 * 批量插入测试dao

 * @author 一线天色 天宇星辰  创建于2011-3-18 下午10:00:09

 * com.yhj.dao.BatchDao.java

 */

public class BatchDao {

    /**

     * 批量插入

     * @param users

     * @throws SQLException

     * @author 一线天色 天宇星辰  创建于2011-3-18 下午10:00:30

     */

    public void save(List<User> users) throws SQLException {

       Connection conn=null;

       try {

           conn = DBConnection.getConnection();

           conn.setAutoCommit(false);

           String sql = "insert into user (user_name,password,sex,user_type,remark) values(?,?,?,?,?)";

           PreparedStatement preparedStatement=conn.prepareStatement(sql);

           for(User user:users){

              preparedStatement.setString(1, user.getUserName());

              preparedStatement.setString(2, user.getPassword());

              preparedStatement.setInt(3, user.getSex());

              preparedStatement.setInt(4, user.getUserType());

              preparedStatement.setString(5, user.getRemark());

              preparedStatement.addBatch();

           }

           preparedStatement.executeBatch(); 

           conn.commit(); 

       } catch (Exception e) {

           conn.close();

       }

      

    }

 

}

 

  评论这张
 
阅读(94623)| 评论(5)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017