《基于Java的数据采集(一)》:http://www.cnblogs.com/lichenwei/p/3904715.html

《基于Java的数据采集(二)》:http://www.cnblogs.com/lichenwei/p/3905370.html

《基于Java的数据采集(终结篇)》:http://www.cnblogs.com/lichenwei/p/3910492.html

基于之前2篇Java数据采集入库,做了下功能整合,实现本地的存读取,上个效果图:

基于Java的数据采集(三)

基于Java的数据采集(三)

基于Java的数据采集(三)

直接上代码吧,本程序只是作为"如何用JAVA抓取页面简单采集入库"的入门,在实际做采集工具的时候,还需考虑许多东西,比如当采集一个页面发生卡顿时,发生延迟时怎么办?等一系列的问题,希望这篇文字能够抛砖引玉。

先看下项目结构:

一共有五个类:

Mysql.java  --数据库操作类

RegEX.java   --正则匹配类

GetAllData.java --采集类

Action.java  --功能实现类

FootBallMain.java --主程序类

其他的,直接结合前面2篇文章外加看代码注释吧

Mysql.java

 1 package com.lcw.curl;
 2 
 3 
 4 import java.sql.Connection;
 5 import java.sql.DriverManager;
 6 import java.sql.ResultSet;
 7 import java.sql.SQLException;
 8 import java.sql.Statement;
 9 
10 
11 /**
12  * 数据库操作类,一更新,一查询
13  * @author Balla_兔子
14  *
15  */
16 public class MySql {
17   
18     //定义MySql驱动,数据库地址,数据库用户名 密码, 执行语句和数据库连接  
19     public String driver = "com.mysql.jdbc.Driver";
20     public String url = "jdbc:mysql://127.0.0.1:3306/football";
21     public String user = "root";
22     public String password = "";
23     public Statement stmt = null;
24     public Connection conn = null;
25     
26     //创建一个插入数据的方法
27     public void datatoMySql(String insertSQl) {
28 
29         try {
30             try {
31                 Class.forName(driver).newInstance();
32             } catch (Exception e) {
33                 System.out.println("Unable to find the local driver");
34                 e.printStackTrace();
35             }
36             //创建连接
37             conn = DriverManager.getConnection(url, user, password);
38             //创建一个 Statement 对象来将 SQL 语句发送到数据库
39             stmt = conn.createStatement();
40         } catch (SQLException e) {
41             e.printStackTrace();
42         }
43         try {
44             //执行SQL 插入语句
45             stmt.executeUpdate(insertSQl);
46         } catch (SQLException e) {
47             e.printStackTrace();
48         }
49         try {
50             stmt.close();
51             conn.close();
52         } catch (SQLException e) {
53             e.printStackTrace();
54         }
55     }
56     
57     
58   //创建一个查找数据的方法
59     public ResultSet searchMySql(String selectSQl) {
60         
61         ResultSet rs=null;
62 
63         try {
64             try {
65                 Class.forName(driver).newInstance();
66             } catch (Exception e) {
67                 System.out.println("Unable to find the local driver");
68                 e.printStackTrace();
69             }
70             //创建连接
71             conn = DriverManager.getConnection(url, user, password);
72             //创建一个 Statement 对象来将 SQL 语句发送到数据库
73             stmt = conn.createStatement();
74         } catch (SQLException e) {
75             e.printStackTrace();
76         }
77         try {
78             //执行SQL 插入语句
79             rs=stmt.executeQuery(selectSQl);
80         } catch (SQLException e) {
81             e.printStackTrace();
82         }
83         
84         return rs;
85     }
86     
87 }
Mysql.java

相关文章: