Spark将execl表格文件导入到mysql中

实现代码

excel所需的pom依赖

案例实现


实现代码

Scala 复制代码
package excel_mysql

import org.apache.spark.sql.SparkSession
import java.util.Properties

object t1 {
  def main(args: Array[String]): Unit = {
    val spark = SparkSession.builder()
      .appName("ExcelToMySQL") //项目名
      .master("local[*]")
      .getOrCreate()

    // 读取Excel表
    val df = spark.read
      .format("com.crealytics.spark.excel") //需要的包
      .option("header", "true")
      .load("file:///D:\\sparks\\src\\main\\datas\\d.xlsx") //本地excel文件路径

    // 创建MySQL连接配置
    val jdbcHostname = "192.168.10.137" //连接主机ip
    val jdbcPort = 3306 //端口
    val jdbcDatabase = "test" //数据库名
    val jdbcUsername = "root" //用户名
    val jdbcPassword = "123456" //mysql密码
    val jdbcUrl = s"jdbc:mysql://${jdbcHostname}:${jdbcPort}/${jdbcDatabase}"
    val connectionProperties = new Properties()
    connectionProperties.put("user", s"${jdbcUsername}")
    connectionProperties.put("password", s"${jdbcPassword}")

    // 将DataFrame写入MySQL表中
    df.write
      .mode("overwrite")
      .jdbc(jdbcUrl, "user_info", connectionProperties) //导入目标的mysql数据库下的表名
    spark.stop()
  }
}

excel所需的pom依赖

Scala 复制代码
        <dependency>
            <groupId>com.crealytics</groupId>
            <artifactId>spark-excel_2.12</artifactId>
            <version>0.13.7</version>
        </dependency>

案例实现

准备的excel表:

放在路径下面:

执行代码:

在mysql中查看:

相关推荐
DianSan_ERP2 小时前
电商API接口全链路监控:构建坚不可摧的线上运维防线
大数据·运维·网络·人工智能·git·servlet
够快云库2 小时前
能源行业非结构化数据治理实战:从数据沼泽到智能资产
大数据·人工智能·机器学习·企业文件安全
加号32 小时前
windows系统下mysql多源数据库同步部署
数据库·windows·mysql
シ風箏2 小时前
MySQL【部署 04】Docker部署 MySQL8.0.32 版本(网盘镜像及启动命令分享)
数据库·mysql·docker
AI周红伟3 小时前
周红伟:智能体全栈构建实操:OpenClaw部署+Agent Skills+Seedance+RAG从入门到实战
大数据·人工智能·大模型·智能体
WeiXin_DZbishe3 小时前
基于django在线音乐数据采集的设计与实现-计算机毕设 附源码 22647
javascript·spring boot·mysql·django·node.js·php·html5
B站计算机毕业设计超人3 小时前
计算机毕业设计Django+Vue.js高考推荐系统 高考可视化 大数据毕业设计(源码+LW文档+PPT+详细讲解)
大数据·vue.js·hadoop·django·毕业设计·课程设计·推荐算法
计算机程序猿学长3 小时前
大数据毕业设计-基于django的音乐网站数据分析管理系统的设计与实现(源码+LW+部署文档+全bao+远程调试+代码讲解等)
大数据·django·课程设计
B站计算机毕业设计超人3 小时前
计算机毕业设计Django+Vue.js音乐推荐系统 音乐可视化 大数据毕业设计 (源码+文档+PPT+讲解)
大数据·vue.js·hadoop·python·spark·django·课程设计
十月南城3 小时前
数据湖技术对比——Iceberg、Hudi、Delta的表格格式与维护策略
大数据·数据库·数据仓库·hive·hadoop·spark