上面是我 sparkstreaming的语句和出来的效果
上面是荒创建的数据库和表,字段一定要和传入的数据一一对应
// 8. 需求三3:将需求2实时结果写入mysql数据库(4分) //多加了一层foreachRDD value.foreachRDD(rdd=>{ rdd.foreachPartition(item=>{ //注册驱动 Class.forName("com.mysql.jdbc.Driver") val connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/week2_9", "root", "123456") //建立连接 var sql="INSERT INTO `week2_9`.`pr`(`name`, `num`) VALUES (?,?);" val ps = connection.prepareStatement(sql) item.foreach(y=>{ ps.setString(1,y._1) ps.setInt(2,y._2) //批量添加 ps.addBatch() }) //批量提交 ps.executeBatch() ps.close(); connection.close(); }) })
运行数据为:
数据也成功导入到mysql中
其实sparkStreaming和sparkCore导入到mysql中区别就在于:sparkStreaming最外层要加foreachRDD