Spark 2.43讀取.json文件入庫到MySQL 8

  1. 若是沒有安裝包,能夠用個人這個html

    百度網盤連接 點擊進入 提取碼: eku1java

  2. 解壓以後mysql

     

  3. 準備開始配置環境變量sql

     

  4.  

     

  5.  

     

  6.  

     

  7.  

     

  8. 若是運行時候報錯參考 (java.io.IOException: Could not locate executable null\bin\winutils.exe in the Hadoop binaries.) 點擊進入apache

     

  9. 先看運行項目的結構json

     

  10. pom.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
        <modelVersion>4.0.0</modelVersion>
    
        <groupId>spark</groupId>
        <artifactId>spark-test</artifactId>
        <version>1.0.0-SNAPSHOT</version>
    
        <dependencies>
            <!--spark-core-->
            <dependency>
                <groupId>org.apache.spark</groupId>
                <artifactId>spark-core_2.12</artifactId>
                <version>2.4.3</version>
            </dependency>
            <!--spark-sql-->
            <dependency>
                <groupId>org.apache.spark</groupId>
                <artifactId>spark-sql_2.12</artifactId>
                <version>2.4.3</version>
            </dependency>
            <!--mysql驅動-->
            <dependency>
                <groupId>mysql</groupId>
                <artifactId>mysql-connector-java</artifactId>
                <version>8.0.17</version>
            </dependency>
        </dependencies>
    </project>
    pom.xml

     

  11. TestSpark.java
    package panfeng; import org.apache.spark.sql.Dataset; import org.apache.spark.sql.Row; import org.apache.spark.sql.SparkSession; import java.util.Properties; public class TestSpark { /* {"name":"大牛","age":"12","address":"吉林省長春市二道區臨河街萬興小區4棟2門303","phone":"18935642561"} {"name":"二蛋","age":"26","address":"河南省鄭州市金水區名字二蛋403","phone":"19658758562"} {"name":"三驢","age":"53","address":"安徽省阜陽市太和縣陶樓村605","phone":"13245756523"} {"name":"四毛","age":"17","address":"天津空間室內發你手機8806","phone":"17546231544"} {"name":"五虎","age":"98","address":"誰都不會作哪些技能聚划算505","phone":"16523546825"} 文件位置 D:\Everything\IDEA\Project\spark\tools\JSON_TEST.json */
    
        public static void main(String[] args) { SparkSession sparkSession = SparkSession.builder().master("local").appName("user").getOrCreate(); //Dataset<Row> row_dataset = sparkSession.read().json("D:\\Everything\\IDEA\\Project\\spark\\tools\\JSON_TEST.json");//絕對路徑 //Dataset<Row> row_dataset = sparkSession.read().json("spark-test/src/main/resources/JSON_TEST.json");//相對路徑
            Dataset<Row> row_dataset = sparkSession.read().json("*/src/main/resources/json/JSON_TEST.json");//*相對路徑
     Properties properties = new Properties(); properties.put("user", "root"); properties.put("password", "123456"); // *驅動不指定,系統會自動識別url //properties.put("driver","com.mysql.jdbc.Driver");//mysql5 //properties.put("driver","com.mysql.cj.jdbc.Driver");//mysql8 // *若是是本地,localhost:3306能夠省略 //row_dataset.write().mode("append").jdbc("jdbc:mysql://localhost:3306/spark_test?serverTimezone=UTC", "t_user", properties); // 1,不管怎樣都添加 //row_dataset.write().mode("append").jdbc("jdbc:mysql:///spark_test?serverTimezone=UTC", "t_user", properties); // 2,若是有重寫,會覆蓋之前的內容,若是沒有就添加
            row_dataset.write().mode("overwrite").jdbc("jdbc:mysql:///spark_test?serverTimezone=UTC", "t_user", properties); sparkSession.stop(); System.out.println("Complete..."); } }
    TestSpark.java

     

  12. JSON_TEST.json
    {"name":"大牛","age":"12","address":"吉林省長春市二道區臨河街萬興小區4棟2門303","phone":"18935642561"} {"name":"二蛋","age":"26","address":"河南省鄭州市金水區名字二蛋403","phone":"19658758562"} {"name":"三驢","age":"53","address":"安徽省阜陽市太和縣陶樓村605","phone":"13245756523"} {"name":"四毛","age":"17","address":"天津空間室內發你手機8806","phone":"17546231544"} {"name":"五虎","age":"98","address":"誰都不會作哪些技能聚划算505","phone":"16523546825"}
    JSON_TEST.json
相關文章
相關標籤/搜索