将CSDN600W用户及密码帐号存入本地MySql数据库

 有感于密码文本文件太大,索性将其存入本地MySql,其中有6个账户因为文件编码问题不知密码,将其删去。

 

 1 import java.io.BufferedReader;
 2 import java.io.File;
 3 import java.io.FileNotFoundException;
 4 import java.io.FileReader;
 5 import java.io.IOException;
 6 import java.sql.Connection;
 7 import java.sql.DriverManager;
 8 import java.sql.PreparedStatement;
 9 import java.sql.SQLException;
10 
11 public class InsertCsdnPsw {
12     
13     private static String driver = "com.mysql.jdbc.Driver";
14     private static String user = "root";
15     private static String pwd = "root";
16     private static String url = "jdbc:mysql://localhost:3306/csdnpsw?useUnicode=true&characterEncoding=UTF-8";
17     private static int step = 300000;//步进,每次批量插入数量,这个200000以上需调整JVM内存占用
18 
19     /**
20      * @param args
21      */
22     public static void main(String[] args) {
23         File file = new File("E:\\ubuntushare\\www.csdn.net.sql");
24         BufferedReader reader = null;
25         try {
26             reader = new BufferedReader(new FileReader(file));
27         } catch (FileNotFoundException e2) {
28             e2.printStackTrace();
29         }
30         
31         Connection con = null;
32         PreparedStatement pstmt = null;
33         String sql = "insert into userinfo_copy values(?,?,?)";
34         try {
35             Class.forName(driver);
36             con = DriverManager.getConnection(url, user, pwd);
37             pstmt = con.prepareStatement(sql);
38         } catch (ClassNotFoundException ex) {
39             ex.printStackTrace();
40         } catch (SQLException e) {
41             e.printStackTrace();
42         }
43         long line = 0;
44         long start = System.currentTimeMillis();
45         insert(con, line, reader, pstmt, start);
46 
47         if (reader != null) {
48             try {
49                 reader.close();
50             } catch (IOException e1) {
51                 e1.printStackTrace();
52             }
53         }
54     }
55     
56     public static void insert(Connection con, long line, BufferedReader reader, PreparedStatement pstmt, long start) {
57         try {
58             con.setAutoCommit(false);
59             con.commit();
60             try {
61                 String tempString = null;
62                 // 一次读入一行,直到读入null为文件结束
63                 while ((tempString = reader.readLine()) != null) {
64                     line++;
65                     pstmt.setString(1, tempString.split(" # ")[0]);
66                     pstmt.setString(2, tempString.split(" # ")[1]);
67                     pstmt.setString(3, tempString.split(" # ")[2]);
68                     pstmt.addBatch();
69                     if (line % step == 0) {
70                         pstmt.executeBatch();
71                         con.commit();
72                         pstmt.clearParameters();
73                         pstmt.clearBatch();
74                         System.out.println("添加 " + line + "\t条记录耗时 "+(System.currentTimeMillis() - start)+"\t"/*+";耗时比 : "
75                                 + ((line+0.0)/(System.currentTimeMillis() - start))*/);
76                     }
77                 }
78                 reader.close();
79             } catch (IOException e) {
80                 e.printStackTrace();
81             } finally {
82                 
83             }
84             pstmt.executeBatch();
85             con.commit();
86             System.out.println("添加 \t" + line + "\t条记录耗时 "+(System.currentTimeMillis() - start)+"\t"/*+";耗时比 : "
87             + ((line+0.0)/(System.currentTimeMillis() - start))*/);
88         } catch (SQLException e2) {
89             System.out.println((line-step) + "到" + line + "有问题");
90             insert(con, line, reader, pstmt, start);
91             //e2.printStackTrace();
92         }
93     }
94 }

转载于:https://www.cnblogs.com/cokepanm/archive/2011/12/26/2301631.html

MySQL是一种常见的关系型数据库管理系统,广泛用于网站和应用程序的数据存储和管理。CSDN是一家国内知名的IT技术社区,提供丰富的技术文章、博客、论坛等资源。下面我将用300字详细介绍MySQL数据库CSDN之间的关系。 MySQL数据库是由瑞典公司MySQL AB开发的,后来被Sun Microsystems收购,Sun又被Oracle收购。MySQL以其开源、易用、高性能和可靠性等特点,成为最受欢迎的关系型数据库之一。许多网站和应用程序都选用MySQL作为其后端数据库,用于存储和管理大量的数据。MySQL使用标准的SQL语言,具有强大的数据处理和查询功能,可以满足各种应用场景的需求。 CSDN作为中国最大的IT技术社区之一,汇集了大量的IT从业者、开发者和爱好者。在CSDN上,用户可以发布技术文章、开设技术博客、参与技术讨论等。这些文章、博客和讨论涉及了各种技术领域,包括数据库、编程、网络、系统等。MySQL作为一种常用的数据库,也是CSDN上热门的话题之一。在CSDN上,用户可以学习MySQL的基础知识、进阶技巧和最佳实践,讨论MySQL的应用场景和解决方案,分享MySQL的开发经验和案例等。 CSDN上有许多MySQL相关的文章和博客,涵盖了MySQL的各个方面,包括安装配置、数据操作、查询优化、性能调优等。用户可以通过搜索引擎或在CSDN上的专栏找到自己感兴趣的MySQL文章。此外,CSDN还提供了MySQL的学习资源和教程,如视频课程、在线教程等。用户可以按照自己的需求和学习进度选择适合自己的学习方式。 总之,MySQL数据库CSDN之间存在着密切的关系。CSDNMySQL的学习者和使用者提供了丰富的学习资源、知识分享和技术交流的平台,帮助开发者更好地理解和应用MySQL,提高数据库的设计和开发能力。同时,MySQL的广泛应用也丰富了CSDN的内容,为CSDN用户提供了更多的学习和探索的机会。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值