1、导入相关依赖

<properties>
        <java.version>1.8</java.version>
        <spark.version>2.1.0</spark.version>
        <scala.version>2.11</scala.version>
 </properties>
 <dependencies>
        <dependency>
            <groupId>org.apache.spark</groupId>
            <artifactId>spark-core_${scala.version}</artifactId>
            <version>${spark.version}</version>
        </dependency>
        <dependency>
            <groupId>org.apache.spark</groupId>
            <artifactId>spark-streaming_${scala.version}</artifactId>
            <version>${spark.version}</version>
        </dependency>
        <dependency>
        <groupId>org.apache.spark</groupId>
        <artifactId>spark-sql_${scala.version}</artifactId>
        <version>${spark.version}</version>
        </dependency>
        <dependency>
            <groupId>org.scala-lang</groupId>
            <artifactId>scala-library</artifactId>
            <version>2.11.11</version>
        </dependency>
 </dependencies>

2、java代码

package com.spark.test;

import org.apache.spark.sql.Dataset;
import org.apache.spark.sql.Row;
import org.apache.spark.sql.SparkSession;

public class SparkSql {
    public static void main(String[] args) {
        //1、创建sparksession对象
        SparkSession session = SparkSession.builder().master("local[1]").appName("Spark Sql").getOrCreate();
        //2、加载数据源并转换为DataFrame对象
        Dataset<Row> json = session.read().json("C:\\Users\\spectre\\Desktop\\stu");
        //3、查询
        //Dataset<Row> se = json.select("stuname","stuage","stusex").where("stuage>20");
        //se.show();
        //创建视图
        json.createOrReplaceTempView("stus");
        //通过视图查询数据
        Dataset<Row> sql = session.sql("select stuname,stuage,stusex from stus");
        sql.show();


    }
}