Scala学习笔记(9)—— Scala实战项目(1)- 环境搭建

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u012292754/article/details/85208869

1 项目需求

1.1 数据库管理(java实现)

default  my-db1  my-db2
id:数据库编号
name : 数据库名称
location : 数据库存放在 HDFS/S3/OSS 等文件系统上的目录
	/user/hive/warehouse
	/user/hive/warehouse/my-db1.db

1.2 表管理(scala语言实现)

my-table1	my-tanle2
id : 表编号
name : 表名称
tableType : 表类型,内部表/外部表
dbId : 表所属的数据库 id
默认存储路径 : db 对应的 location / tablename

2 开发环境搭建

  • IDEA + Spring Boot + Data + java
  • IDEA + Spring Boot + Data + Scala
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • 删除以下的文件
    在这里插入图片描述
    在这里插入图片描述
  • 新建一个配置文件
    在这里插入图片描述
    在这里插入图片描述
  • 运行主类 SpringBootScalaApplication.java
    访问 http://localhost:7777/scala-boot/
    在这里插入图片描述
  • 新建 controller 包,新建 HelloBoot.java 文件
    在这里插入图片描述
package controller;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class HelloBoot {

    @RequestMapping(value = "/sayHello", method = RequestMethod.GET)
    public String sayHelli() {
        return "Hello Boot ....";
    }
}

  • 浏览器访问 http://localhost:7777/scala-boot/sayHello

2.1 POM 文件添加依赖

<?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>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.5.18.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>com.scala.shizhan</groupId>
    <artifactId>spring-boot-scala</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>spring-boot-scala</name>
    <description>Demo project for Spring Boot</description>

    <properties>
        <java.version>1.8</java.version>
        <scala.version>2.11.8</scala.version>
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>

        <!--添加 Scala 依赖-->
        <dependency>
            <groupId>org.scala-lang</groupId>
            <artifactId>scala-library</artifactId>
            <version>${scala.version}</version>
        </dependency>

        <!--添加Data 的依赖-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jpa</artifactId>
        </dependency>

        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
        </dependency>

    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>

            <!--添加 Scala 的plugin-->
            <plugin>
                <groupId>net.alchim31.maven</groupId>
                <artifactId>scala-maven-plugin</artifactId>
                <version>3.2.1</version>
                <executions>
                    <execution>
                        <id>compile-scala</id>
                        <phase>compile</phase>
                        <goals>
                            <goal>add-source</goal>
                            <goal>compile</goal>
                        </goals>
                    </execution>

                    <execution>
                        <id>test-compile-scala</id>
                        <phase>test-compile</phase>
                        <goals>
                            <goal>add-source</goal>
                            <goal>testCompile</goal>
                        </goals>
                    </execution>
                </executions>

                <configuration>
                    <recompileMode>incremental</recompileMode>
                    <scalaVersion>${scala.version}</scalaVersion>
                    <args>
                        <arg>-deprecation</arg>
                    </args>
                    <jvmArgs>
                        <jvmArg>-Xms64m</jvmArg>
                        <jvmArg>-Xmx1024m</jvmArg>
                    </jvmArgs>
                </configuration>
            </plugin>

        </plugins>
    </build>

</project>


2.2 新建 Scala 目录

在这里插入图片描述

package com.scala.shizhan.controller

import org.springframework.web.bind.annotation.{RequestMapping, RequestMethod, RestController}

@RestController
class ScalaHelloBoot {

    @RequestMapping(value = Array("/sayScalaHello"), method = Array(RequestMethod.GET))
    def sayScalaHello(): String = {
        "Hello Scala Boot ....."
    }
}


  • 浏览器访问 http://localhost:7777/scala-boot/sayScalaHello
    在这里插入图片描述

2.3 新建数据库

mysql> create database scalaboot;
Query OK, 1 row affected (0.00 sec)

mysql> use scalaboot;
Database changed
mysql> show tables;
Empty set

mysql> 
  • 修改配置文件
    在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/u012292754/article/details/85208869