搭建第一个SpringBoot项目

其实,创建 SpringBoot 的项目就是在创建 Maven 项目。
如果你还不知道 Maven 是什么,请移步 Maven基本概念

一、创建一个 Maven 项目

  1. 创建一个简单的工程:

    这里写图片描述

  2. 填写组织名(Group Id),项目名(Atrifact Id),版本号(Version):

    这里写图片描述

  3. 项目结构如下:

    这里写图片描述

二、配置 pom 文件

引入 SpringBoot 的依赖 spring-boot-web-starter 以及它的 parent spring-boot-starter-parent

<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>com.qjl</groupId>
    <artifactId>bootstart</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <!-- 在这里配置了SpringBoot的parent,后续配置的spring-boot的依赖的version就可以直接继承该version -->
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.4.1.RELEASE</version>
    </parent>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
            <!-- 因为上面已经配置了parent,所以直接从parent继承版本号 -->
        </dependency>
    </dependencies>

</project>

当然,你也可以这样配置:

<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>com.qjl</groupId>
    <artifactId>bootstart</artifactId>
    <version>0.0.1-SNAPSHOT</version>

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

</project>

不过这样配置的话,后续的 spring-boot 的相关依赖的 dependency 标签就必须完整填写,不能省略版本号,通常情况下,后续还会有很多的 spring-boot 的依赖,so ,建议使用 parent 的方式来配置

ps:引入了这个 spring-boot-web-starter 依赖以后就会产生如下效果:

这里写图片描述
这里写图片描述

spring-boot-web-starter 会把 Spring 开发 Web 项目的一系列 jar 包都引入进来,比如我们的 spring-webmvc,解析和发送 JSON 字符串所需要的 jackson最重要的是它把我们的 tomcat 也内嵌进来了,我们连服务器都不需要额外准备了,方便。

三、创建一个 Controller

创建一个 SpringMVC 的控制器 Controller 用于处理请求:

package com.qjl.bootstart.controller;

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

/**
 * 类名称:SpringMVC的控制器
 * 全限定性类名: com.qjl.bootstart.controller.BootController
 * @author 曲健磊
 * @date 2018年8月4日上午10:38:23
 * @version V1.0
 */
@RestController
@RequestMapping("/boot")
public class BootController {

    @RequestMapping("/hello")
    public String boot() {
        return "hello SrpingBoot";
    }

}

四、创建一个测试类启动SpringBoot项目

package com.qjl.bootstart.main;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

/**
 * 类名称:用于启动SpringBoot
 * 全限定性类名: com.qjl.bootstart.main.SpringBootMain
 * @author 曲健磊
 * @date 2018年8月4日上午10:41:27
 * @version V1.0
 */
@SpringBootApplication
public class SpringBootMain {

    public static void main(String[] args) {
        // 启动SpringBoot项目
        SpringApplication.run(SpringBootMain.class, args);
    }

}

右击 –> Run As –> Java Application 运行当前主程序:

这里写图片描述

是的,到目前为止我们用 SpringBoot 搭建的项目就已经成功运行并部署到了内嵌的 tomcat 上了,按照 Controller 配置的 RequestMapping 发送个请求试试:

这里写图片描述

出错了,没有匹配到?经过测试,是需要把 Controller 和 启动类放到同一目录下才可以匹配请求,修改 java 文件如下:

这里写图片描述

重新启动项目并发送请求 localhost:8080/boot/hello

这里写图片描述

匹配成功!

注意:发送的请求不需要加项目名。

运行 SpringBoot 项目除了 Run As 的方式以外还可以运行 Maven 的 spring-boot:run 命令来启动,如果是第一次执行该命令的话会下载 SpringBoot 的相关插件,等待插件下载完毕后就会启动项目。

五、打包 SpringBoot 项目

因为我们打包项目通常需要把项目依赖的所有 jar 包都导出,而如果是使用 SpringBoot 创建的项目,如果需要实现这一效果,还需要在 pom 文件中配置一个插件:

<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>com.qjl</groupId>
    <artifactId>bootstart</artifactId>
    <version>0.0.1-SNAPSHOT</version>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.4.1.RELEASE</version>
    </parent>

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

    <build>
        <plugins>
            <!-- 有了这个插件,在执行 maven 的 package 命令打包项目时就会把依赖的 jar 包一并导出,不信?去了插件自己 package。 -->
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

</project>

在项目上右击 –> Run As –> Maven build(应该有两个 build,选择那个后面没有快捷键的),输入 package 命令:

这里写图片描述

这里写图片描述

项目右击 –> 刷新,可以看出项目已经成功导出到 target 目录下:

这里写图片描述

六、运行打包后的 jar 文件

在 target 目录下,按住 shift 键,右击,选择在此处打开命令行窗口,在命令行输入:java -jar bootstart-0.0.1-SNAPSHOT.jar 就可以在控制台启动项目:

这里写图片描述

发个请求试试:

这里写图片描述

仍然是 OK 的。

总结一下,这篇文章主要讲了:

  1. 创建一个 SpringBoot 项目
  2. 配置 pom 文件
  3. 编写 Controller 匹配请求
  4. 在与 Controller 同目录下编写主类用于启动项目
  5. 启动 SpringBoot 项目的两种方式
  6. 打包 SpringBoot 项目
  7. 运行打包后的 SpringBoot 项目

嗯,可以。

猜你喜欢

转载自blog.csdn.net/a909301740/article/details/81407799