mapreduce数据清洗-第三阶段

3、数据可视化:将统计结果倒入MySql数据库中,通过图形化展示的方式展现出来。

首先启动mysql,然后确保自己的local_infile是“ON”状态。SHOW VARIABLES LIKE '%local%';

(show variables like '%secure%';)来查看自己mysql-files的路径。

在这里我的mysql-files的路径就是 /var/lib/mysql-files;

之后将准备导入的文件放到mysql_files目录下,最后导入LOAD DATA INFILE '/var/lib/mysql-files/part-r-00000' INTO  TABLE stage1 fields terminated by ',';(在这里每一列之间使用逗号分隔的)

之后在web工程下导入jdbc的jar包。

以下是dao层代码:

package Dao;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;

import Entity.entity;

public class dao {
	public List<entity> stage1() {
		List<entity> list = new ArrayList<entity>();
		try {
			// 加载数据库驱动,注册到驱动管理器
			Class.forName("com.mysql.jdbc.Driver");
			// 数据库连接字符串
			String url = "jdbc:mysql://localhost:3306/mysql?useUnicode=true&characterEncoding=utf-8";
			// 数据库用户名
			String username = "root";
			// 数据库密码
			String password = "";
			// 创建Connection连接
			Connection conn = DriverManager.getConnection(url, username,
					password);
			// 添加图书信息的SQL语句
			String sql = "select * from stage2";
			// 获取Statement
			Statement statement = conn.createStatement();
 
			ResultSet resultSet = statement.executeQuery(sql);
 
			while (resultSet.next()) {
 
				entity book = new entity();
				book.setClick(resultSet.getString("click"));
				book.setType(resultSet.getString("Type"));
				list.add(book);
			}
			resultSet.close();
			statement.close();
			conn.close();
}catch (Exception e) {
	e.printStackTrace();
}
		return list;
	}
	public List<entity> stage2() {
		List<entity> list = new ArrayList<entity>();
		try {
			// 加载数据库驱动,注册到驱动管理器
			Class.forName("com.mysql.jdbc.Driver");
			// 数据库连接字符串
			String url = "jdbc:mysql://localhost:3306/mysql?useUnicode=true&characterEncoding=utf-8";
			// 数据库用户名
			String username = "root";
			// 数据库密码
			String password = "";
			// 创建Connection连接
			Connection conn = DriverManager.getConnection(url, username,
					password);
			// 添加图书信息的SQL语句
			String sql = "select * from stage3";
			// 获取Statement
			Statement statement = conn.createStatement();
 
			ResultSet resultSet = statement.executeQuery(sql);
 
			while (resultSet.next()) {
 
				entity book = new entity();
				book.setClick(resultSet.getString("click"));
				book.setIp(resultSet.getString("ip"));
				list.add(book);
			}
			resultSet.close();
			statement.close();
			conn.close();
}catch (Exception e) {
	e.printStackTrace();
}
		return list;
	}
	public List<entity> stage3() {
		List<entity> list = new ArrayList<entity>();
		try {
			// 加载数据库驱动,注册到驱动管理器
			Class.forName("com.mysql.jdbc.Driver");
			// 数据库连接字符串
			String url = "jdbc:mysql://localhost:3306/mysql?useUnicode=true&characterEncoding=utf-8";
			// 数据库用户名
			String username = "root";
			// 数据库密码
			String password = "";
			// 创建Connection连接
			Connection conn = DriverManager.getConnection(url, username,
					password);
			// 添加图书信息的SQL语句
			String sql = "select * from stage1";
			// 获取Statement
			Statement statement = conn.createStatement();
 
			ResultSet resultSet = statement.executeQuery(sql);
 
			while (resultSet.next()) {
 
				entity book = new entity();
				book.setTraffic(resultSet.getString("traffic"));
				book.setType(resultSet.getString("Type"));
				list.add(book);
			}
			resultSet.close();
			statement.close();
			conn.close();
}catch (Exception e) {
	e.printStackTrace();
}
		return list;
	}
}

  那么结果:

原文地址:https://www.cnblogs.com/jccjcc/p/11868321.html