java(功能篇) java(mysql)数据库 实现数据批量插入
2014-09-11 09:58
916 查看
package com.emc.database; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.text.SimpleDateFormat; import java.util.Date; import java.util.List; import com.emc.model.DyLun; import com.emc.service.DyLunService; public class Demo { public static final String DBDRIVER = "com.mysql.jdbc.Driver"; public static final String DBURL = "jdbc:mysql://192.168.0.32:3306/iiiis"; public static final String DBUSER = "root"; public static final String DBPASS = "Vixuan724"; //java 除法取整函数 public static int getMyInt(int a,int b) { return(((double)a/(double)b)>(a/b)?a/b+1:a/b); } //批处理处理信息量 private static final int processing=50; /** * @param args */ public static void main(String[] args) throws Exception { // TODO Auto-generated method stub Connection conn=null; PreparedStatement ps=null; String sql="insert into TB_DY_LUN (device_Id,VOLUME_ID_IN_ARRAY,VOLUME_NAME,VOLUME_TYPE,UPDATE_FLAG,NUMBER_OF_BLOCK,BLOCK_SIZE,RAID_LEVEL,HEALTH_STATE,VOLUME_ID_IN_HOST,update_time) values(?,?,?,?,?,?,?,?,?,?,?)"; Class.forName(DBDRIVER); conn=DriverManager.getConnection(DBURL, DBUSER, DBPASS); ps=conn.prepareStatement(sql); DyLunService service = new DyLunService(); List<DyLun> list = service .getdylun("C:\\data\\emc\\Symm_StorageVolume.xml"); //批处理循环次数 int k=getMyInt(list.size(),processing); for(int j=0;j<k;j++){ //批处理数量 for(int i = 0; i < 50; i++){ int result=j*50+i; System.out.println("结果数:"+result); if(result<list.size()){ DyLun lun = list.get(result); String s="select * from TB_DY_LUN where VOLUME_ID_IN_ARRAY='"+lun.getVolumeIdInArray()+"'"; ResultSet set=DataBase.select(s); if (set.next()){ //存在同名主键不做处理 }else{ ps.setString(1 ,lun.getDeviceId() ); ps.setString(2, lun.getVolumeIdInArray()); ps.setString(3,lun.getVolumeName() ); ps.setString(4, lun.getVolumeType()); ps.setString(5, lun.getUpdateFlag()); ps.setInt(6, lun.getNumberOfBlock()); ps.setInt(7, lun.getBlockSize()); ps.setString(8, lun.getRaidLevel()); ps.setString(9, lun.getHealthState()); ps.setString(10, lun.getVolumeIdInHost()); Date date = new Date(); SimpleDateFormat dateFormat = new SimpleDateFormat( "yyyy/MM/dd HH:mm:ss"); ps.setString(11, dateFormat.format(date.getTime()).toString()); ps.addBatch(); } } } int trmp[]=ps.executeBatch(); System.out.println("更新了"+trmp.length+"条数据。。"); } ps.close(); conn.close(); } }
相关文章推荐
- Java 批量插入数据库(MySQL)数据
- Java 批量插入数据到数据库(MySQL)中
- Java 批量插入数据库(MySQL)数据
- mysql 使用 insert ignore into和unique实现不插入重复数据功能
- asp实现批量插入表单中的数据到数据库的方法
- 用java实现从文本文件批量导入数据至数据库
- java中不同的ORM框架实现对数据库批量插入数据库的方式与技巧
- (jsp 和 servlet功能篇) jsp+servlet+javaBean 实现分页代码(mysql 数据库)
- SqlBulkCopy来实现批量插入数据的功能
- 用Maven整合SpringMVC+Spring+Hibernate 框架,实现简单的插入数据库数据功能
- java实现读取XML文件数据插入到数据库中
- 用Maven整合SpringMVC+Spring+Hibernate 框架,实现简单的插入数据库数据功能
- 用java实现excel数据批量导入数据库
- JDBC操作Vertica数据库,用PreparedStatements对象实现批量插入数据
- Hibernate框架的基本搭建(一个小的java project的测试向数据库中插入和查询数据的功能)
- 使用JAVA语言中的addBatch和executeBatch()实现数据批处理插入数据库
- Java在数据库操作中批量插入数据
- 那些年java web开发中遇到的问题(4)---如何实现表单提交(插入数据到mysql)
- mysql上将文本上数据批量导入数据库c语言实现(C API)
- JAVA对数据库进行操作,实现数据库中数据的插入,查询,更改,删除操作