Loading

SpringBoot2笔记-1.2 SpringBoot2入门

本文参考文档Getting Start部分。 image
该部分为五节,分别介绍SpringBoot2、系统要求、安装、开发第一个应用和后续应该如何学习。 image
本文主要介绍如何开发第一个SpringBoot应用 image

准备

  • 安装好java8以上,熟悉基本的IDEA的使用。
  • 配置maven镜像加速以及默认JDK版本。
<mirrors>
      <mirror>
        <id>nexus-aliyun</id>
        <mirrorOf>central</mirrorOf>
        <name>Nexus aliyun</name>
        <url>http://maven.aliyun.com/nexus/content/groups/public</url>
      </mirror>
  </mirrors>
 
  <profiles>
         <profile>
              <id>jdk-1.8</id>
              <activation>
                <activeByDefault>true</activeByDefault>
                <jdk>1.8</jdk>
              </activation>
              <properties>
                <maven.compiler.source>1.8</maven.compiler.source>
                <maven.compiler.target>1.8</maven.compiler.target>
                <maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
              </properties>
         </profile>
  </profiles>
  • 创建一个基本的Maven java项目。

4.1. Creating the POM 创建pom文件

如果通过IDEA创建的maven项目一般都有pom文件,我们只需要修改pom文件,添加spring-boot-starter-parent父依赖。

<?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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.example</groupId>
    <artifactId>myproject</artifactId>
    <version>0.0.1-SNAPSHOT</version>

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

    <description/>
    <developers>
        <developer/>
    </developers>
    <licenses>
        <license/>
    </licenses>
    <scm>
        <url/>
    </scm>
    <url/>

    <!-- Additional lines to be added here... -->

</project>

通过mvn命令可以打包并导入依赖,以及查看导入的依赖。。

$ mvn package  #  打包并导入依赖
$ mvn dependency:tree  # 以tree结构查看导入的依赖

此时可以发现spring-boot-starter-parent并没有添加任何依赖,它只负责提供了一个dependency-management标签,以供依赖项中可以省略版本信息。

4.2. Adding Classpath Dependencies 添加类路径依赖

SpringBoot对于不同的开发场景,提供了不同的starter依赖项。
我们将以web应用作为第一个SpringBoot开发示例,因此将导入web相关的starter依赖项。
接下来,在pom文件中parent标签下方,添加一个以下spring-boot-starter-web依赖。

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

4.3. Writing the Code 创建SpringBoot启动和Web控制类

导入依赖后,我们将编写核心代码。
Maven将从src/main/java路径下导入并编译源码,所以创建一个类src/main/java/Example.java包含以下核心代码。

import org.springframework.boot.*;
import org.springframework.boot.autoconfigure.*;
import org.springframework.web.bind.annotation.*;

@RestController
@EnableAutoConfiguration
public class Example {

    @RequestMapping("/")
    String home() {
        return "Hello World!";
    }

    public static void main(String[] args) {
        SpringApplication.run(Example.class, args);
    }

}

这段Example代码中有以下需要注意:

  • @RestController@RequestMapping是SpringMVC的注解,负责处理请求。
  • @EnableAutoConfiguration负责开启了SpringBoot中的自动配置。
  • main方法中调用了SpringApplication 的run方法,将Example类作为主要的一个Spring组件。

4.4. Running the Example

最终我们运行代码

通过maven启动

基于spring-boot-starter-parent,可以在根目录通过mvn spring-boot:run命令启动。

也可以通过jar包方式启动

添加如下依赖

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

重新maven打包后,将生成一个10m左右的jar包。
可以通过java -jar xxx.jar命令启动。

效果

最终在地址栏输入localhost:8080,控制台中会输出

Hello World!

总结

本文没有跟随视频课程和语雀资料的内容做笔记,而是直接看的原文档。
原文档内容确实讲的非常好,同时也要感谢视频课程授我以渔,让我了解了看文档的正确方式。
后续我还是以视频课程文档为主做记录,同时对文档相应的重要内容做笔记。
Getting Start文档最后指出,后续衔接阅读 using-spring-boot 部分的文档,再是 Spring Boot features 部分。

posted @ 2023-01-28 14:50  丘野  阅读(48)  评论(0编辑  收藏  举报