需要导入mysql的驱动jar包
请看下面代码:
object DFMysql {
// 样例类
case class Person(name:String,kemu:String,score:Int)
def main(args: Array[String]): Unit = {
val spark = SparkSession.builder().appName("").master("local").getOrCreate()
val sc = spark.sparkContext
// 设置日志级别
sc.setLogLevel("WARN")
val rdd: RDD[String] = sc.textFile("E://aa.txt")
val file: RDD[Array[String]] = rdd.map(_.split(","))
// 把每个元素放进样例类里,注意类型要匹配
val unit: RDD[Person] = file.map(x=>Person(x(0).toString,x(1).toString,x(2).toInt))
// 隐式转换,转换为DateFrema
import spark.implicits._
val frameDF: DataFrame = unit.toDF()
// 创建一个虚拟表
frameDF.createOrReplaceTempView("student")
// MySQL的配置信息,以下设置连接MySQL的用户和密码
val pro = new Properties()
pro.setProperty("user","root")
pro.setProperty("password","123456")
// 从mysql中的student表中读取数据 read
// spark.read.jdbc("jdbc:mysql:///test","student",pro).show()
// 在mysql创建一个student表,插入数据 write
frameDF.write.jdbc("jdbc:mysql:///test","student",pro)
sc.stop()
}
}
欢迎各位大佬进行补充 (* ̄︶ ̄)