7-22总结

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了7-22总结相关的知识,希望对你有一定的参考价值。

今天学了一个批量添加的一个方法

Connection conn=加载连接数据库.

InputStream ips=new FileInputStream("文件路径");

Reader reader=new InputStream(ips);

BufferedReader bffr=new BufferedReader(reader);

PreparedStatement ppst=conn.prepareStatement("执行语句");

ResultSet rs=ppst.executeQuery();

conn.setAutoCommit(false);// 关闭自动提交.事务

bffr.readLine();//去掉表头.

String ling;

int number=0;

while((line=bffr.readLine())!=null)//line=bffr.readLine()当为空时line=null.
{
String [] newline=line.split(",");
String phoneNumber1=newline[1].replace("\"", "");
String phoneNumber=phoneNumber1.substring(0, 6);
String Areaplace=newline[2].replace("\"", "");
String NumberType=newline[3].replace("\"", "");
System.out.println("手机前六位"+phoneNumber+",地区:"+Areaplace+",运营商类型:"+NumberType);

ppst.clearParameters();//ppst.clearBatch();/////////////////////清楚前面的参数
ppst.setString(1, phoneNumber1);
ppst.setString(2, Areaplace);
ppst.setString(3, NumberType);
ppst.addBatch();                                        //////////////////////批量提交
number++;
if(number%500==0) 
{
ppst.executeBatch();                               
}
}
ppst.executeBatch();
conn.commit();
System.out.println("导入成功");
long endms=System.currentTimeMillis();
System.out.println("执行耗时:"+(endms-startms)+"毫秒");
}

利用POI类来加载exl表格.exl表格相当于是一个sheet表的集合.里面有几个sheet就有几张表.然后按照 行.没一行的cell来获取数据.通过for循环可以遍历数据.

然后通过

ppst.clearParameters();//清楚之前的参数.
ppst.setString(1, ""+i);
ppst.setString(2, id1);//第一个参数代表id1
ppst.setString(3, dz);//第二个参数代表dz
ppst.addBatch();//装到箱子里

来遍历  写入到数据库中.//////////刚开始感觉这个方法挺笨的.

// HSSFWorkbook wb=new HSSFWorkbook();创建一个wookbook文件用来收集exl的信息
// sql="C:\\Users\\Administrator\\Desktop\\新建文件夹\\mysql基础和JDBC\\身份证所在地.xls"
// 表的路径
// HSSFSheet sheet=wb.createSheet("Sheet1");//创建表1
// HSSFRow row=sheet.createRow(0);//创建每一列
// HSSFCell cell=row.createCell(0);//创建每一格子

InputStream ips = null;
Connection conn = null;
PreparedStatement ppst = null;
ResultSet rs = null;
try
{
ips = new FileInputStream("C:\\Users\\Administrator\\Desktop\\新建文件夹\\MySQL基础和JDBC\\身份证所在地.xls");
conn = JdbcUtils.createConnection();
ppst = conn.prepareStatement("Insert into t_idnumber(Id,id1,dz)values(?,?,?)");
conn.setAutoCommit(false);
long sms = System.currentTimeMillis();
HSSFWorkbook wb = new HSSFWorkbook(ips);//建立文件夹获取ips的字节流.
Sheet sht = wb.getSheetAt(0);//获得第一张表的信息
int number = 0;
for (int i = 1; i < sht.getLastRowNum() + 1; i++)// 遍历第一张表的每一行的数据直到最后一行.
{
Row r = sht.getRow(i);





以上是关于7-22总结的主要内容,如果未能解决你的问题,请参考以下文章

2019-7-22 考试总结

mysql-5.7.22的安装和问题总结

暑期周总结二(2018.7.16-2018.7.22)

201621123047 《Java程序设计》第10周学习总结

2017.7.22

作业10-异常