向MySQL数据库中插入内容:(方法传入参数为一个元组RDD)
def insertResult(record: Iterator[(String, String, String, String, String, String, String, String, String, String, Int, Int)]): Unit = {
var conn: Connection = null
var stmt: PreparedStatement = null
try {
val url = "jdbc:mysql://localhost:3306/streaminglog"
val user = "root"
val password = ""
conn = getConnection(url, user, password)
record.foreach(p => {
// 建表: create table streaming(d varchar(50), h varchar(50), hh varchar(50), fm varchar(50), m varchar(50), brand varchar(50), mallid varchar(50), cityid varchar(50), activityid varchar(50), channelid varchar(50), countnum Integer(20), money Integer(20));
val sql = "insert into streaming(d, h, hh, fm, m, brand, mallid, cityid, activityid, channelid, countnum, money) values(?,?,?,?,?,?,?,?,?,?,?,?)"
stmt = conn.prepareStatement(sql)
stmt.setString(1, p._1)
stmt.setString(2, p._2)
stmt.setString(3, p._3)
stmt.setString(4, p._4)
stmt.setString(5, p._5)
stmt.setString(6, p._6)
stmt.setString(7, p._7)
stmt.setString(8, p._8)
stmt.setString(9, p._9)
stmt.setString(10, p._10)
stmt.setInt(11, p._11)
stmt.setInt(12, p._12)
stmt.executeUpdate()
})
} catch {
case e: Exception => e.printStackTrace()
} finally {
if (stmt != null) {
stmt.close()
}
if (conn != null) {
conn.close()
}
}
}