Spring - Spring Boot - 应用构建与运行

时间:2021-06-07 15:01:17
  1. 概述

    1. spring boot 应用构建
    2. spring boot 应用运行
  2. 背景

    1. 之前的看了看 Spring 的书, 结果老懒没实践
    2. 而且后续有别的想法, 但这个始终是第一步

1. 准备

  1. 知识

    1. java 基础
    2. spring boot 基础
    3. maven 基础
  2. 环境

    1. os
      1. win10
    2. maven
      1. 3.6
    3. java
      1. 1.8
    4. spring boot
      1. 2.2.1
    5. ide
      1. IDEA 2018.02

2. 创建 spring boot 应用

  1. 概述

    1. 从 0 开始, 创建一个 简单的 spring boot 工程
    2. spring boot 的内容, 感觉很多
      1. 我就不再细说了
  2. 选择组件

    1. 组件
      1. Actuator
      2. web
      3. devtools
  3. 等待 maven 构建完工程, 就可以了

    1. 一定要等 maven 完毕
      1. 如果不走完流程, 可能会出现一些意想不到的问题

3. 创建一个简单的 restful app

  1. 概述

    1. 创建一个 最简单的 restful app
  2. 创建 controller 类

      1. 想对 application 类的位置关系
        1. 兄弟
          1. 兄弟的儿子
        2. 如果是 父亲的兄弟
          1. 则 controller 类无法被识别
    1. 注解

      1. @RestController
        1. 位置
          1. 类注解
        2. 作用: 相当于两个注解
          1. @Controller
            1. 参与请求的 处理
          2. @ResponseBody
            1. 处理方法的返回值, 作为 内容, 直接写到 body 里
  3. 示例

    @RestController
    @RequestMapping("/")
    public class HomeController { @GetMapping("/home")
    public String home() {
    return "home";
    }
    }
  4. 验证

    1. 启动
      1. 确保正常启动
    2. 验证
      1. 访问 localhost:8080/home
    3. 结果
      1. 会来到一个显示 home 的页面

4. 构建

  1. 概述

    1. 简单的构建
  2. 使用 IDEA 的 maven 工具构建

    1. lifecycle

      1. clean
        1. 清理上一次构建
      2. package
        1. 构建并打包
      3. insatll
        1. 构建并打包
        2. 将包放到 本地库
    2. 使用

      1. 这 仨命令 根据需要自己使用
      2. 当然只有命令成功, 才能达到你的目的

5. 运行

  1. 概述

    1. 有了可用的包, 试试运行吧
  2. 准备

    1. 在构建中, 生成了 可用的 jar 包
    2. 有 jdk 环境
      1. 满足 jar 包的要求
  3. 运行

    1. 命令

      > java -jar <package.jar>
  4. 验证

    1. 查看日志
      1. 是否正确启动, 是否有异常
    2. 访问 url
      1. 访问是否成功

ps

  1. ref

    1. Spring in action 5th edition
    2. springboot的三种启动方式
      1. 这个小哥讲得蛮清楚的, 我就不写了
        1. 人家写了快六年...
  2. 后续

    1. ci
    2. 配合 docker
    3. swagger
    4. jackson
  3. 项目结构

    .
    |-- HELP.md
    |-- ademo.iml
    |-- mvnw
    |-- mvnw.cmd
    |-- pom.xml
    |-- src
    | |-- main
    | | |-- java
    | | | `-- com
    | | | `-- example
    | | | `-- ademo
    | | | |-- AdemoApplication.java
    | | | `-- web
    | | | `-- HomeController.java
    | | `-- resources
    | | |-- application.properties
    | | |-- static
    | | `-- templates
    | `-- test
    | `-- java
    | `-- com
    | `-- example
    | `-- ademo
    | `-- AdemoApplicationTests.java
    `-- target