Spring-boot Getting Started

快速搭建一个SpringBoot的"Hello World"应用

1. Spring Boot 简介

Spring Boot使创建可运行的独立,生产级基于Spring的应用程序变得容易。我们对Spring平台和第三方库持固执己见的观点,这样您就可以以最小的麻烦开始使用。大多数Spring Boot应用程序只需要很少的Spring配置。

您可以使用Spring Boot创建可以通过使用java -jar或更传统的war部署启动的Java应用程序。我们还提供了一个运行“ spring scripts”的命令行工具。

我们的主要目标是:

  • 为所有Spring开发提供根本上更快且可广泛访问的入门体验。
  • 开箱即用,但由于需求开始与默认值有所出入,因此很快就会摆脱困境。
  • 提供一系列大型项目通用的非功能性功能(例如嵌入式服务器,安全性,指标,运行状况检查和外部化配置)。
  • 完全没有代码生成,也不需要XML配置。

2. 系统要求

Spring Boot 2.2.1.RELEASE需要Java 8,并且与Java 13(包括)兼容。还需要Spring Framework 5.2.1.RELEASE或更高版本。

为以下构建工具提供了明确的构建支持:

Build Tool Version
Maven 3.3+
Gradle 5.x (还支持4.10,但已弃用)

2.1. Servlet 容器

Spring Boot 2.2.1.RELEASE支持以下嵌入式servlet容器:

Name Servlet Version
Jetty 9.4 3.1
Undertow 2.0 4.0

3. 开发您的第一个Spring Boot应用程序

在开始之前,请打开命令行窗口并运行以下命令,以确保安装了有效的Java和Maven版本:

$ java -version
java version “1.8.0_102”
Java™ SE Runtime Environment (build 1.8.0_102-b14)
Java HotSpot™ 64-Bit Server VM (build 25.102-b14, mixed mode)

$ mvn -v
Apache Maven 3.5.4 (1edded0938998edf8bf061f1ceb3cfdeccf443fe; 2018-06-17T14:33:14-04:00)
Maven home: /usr/local/Cellar/maven/3.3.9/libexec
Java version: 1.8.0_102, vendor: Oracle Corporation

3.1 通过编辑器基于Maven新建一个Spring-boot项目

  1. 打开IDEA(也可以是其他编辑器)点击Create New Project新建项目:

    Spring-boot Getting Started_第1张图片

  2. 选择Spring Initializr Project SDK选择1.8,点击next下一步:
    Spring-boot Getting Started_第2张图片

  3. 填写好项目的Group(这个一般都是项目的包结构)和Artifact(这个一般都是项目的名称)就可以点击下一步了
    Spring-boot Getting Started_第3张图片

  4. 项目依赖的勾选,可以默认点击下一步:
    Spring-boot Getting Started_第4张图片

  5. 确认项目的存放目录,项目基本搭建完成:

Spring-boot Getting Started_第5张图片
项目的最终目录结构:
Spring-boot Getting Started_第6张图片

3.2 编辑Pom.xml文件添加spring-boot-starter-web依赖

添加spring-boot-starter-web依赖之前可以在项目的根目录下执行mvn dependency:tree命令,可以看到该项目依赖了哪些jar包.

Spring-boot Getting Started_第7张图片

添加spring-boot-starter-web依赖
Spring-boot Getting Started_第8张图片
再次执行mvn dependency:tree命令,你会发现比没有引入web依赖之前多了一些web相关的jar包,tomcat之类的

3.3 编写一个见到controller类


import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

/**
 1. @description
 2. @AUTHOR yangzhiguo
 3. @DATE 2019/12/1
 */
@RestController
@EnableAutoConfiguration
public class Example {

    @RequestMapping("/")
    String home() {
        return "hello world";
    }

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

启动应用程序的方式:

  1. 通过命令窗口执行 mvn spring-boot:run启动:
$ mvn spring-boot:run

  .   ____          _            __ _ _
 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::  (v2.2.1.RELEASE)
....... . . .
....... . . . (log output here)
....... . . .
........ Started Example in 2.222 seconds (JVM running for 6.514)
启动完成后再浏览器输入localhost:8080可以看到“hello,world”的输入
  1. 通过把命令mvn package把项目打包成jar包再通过jar -jar xxx.jar的命令启动应用程序:
    想要把项目打包成jar还的引入一个maven的plugin插件才可以打包,在pom.xml中引入:
    
        
            org.springframework.boot
            spring-boot-maven-plugin
        
    

引入完成后执行 mvn package命令完成后可以在项目目录中看到生成一个target目录,在目录中会存在两个jar文件xxx.jar和xxx.jar.original,两个都是打包生成的,后面original这个是xxx.jar打包生成之前的副本.
Spring-boot Getting Started_第9张图片


$ mvn package

[INFO] Scanning for projects…
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building myproject 0.0.1-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO] … …
[INFO] — maven-jar-plugin:2.4:jar (default-jar) @ myproject —
[INFO] Building jar: /Users/developer/example/spring-boot-example/target/myproject-0.0.1-SNAPSHOT.jar
[INFO]
[INFO] — spring-boot-maven-plugin:2.2.1.RELEASE:repackage (default) @ myproject —
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------


执行命令$ jar tvf target/xxx-0.0.1-SNAPSHOT.jar可以看到应用启动成功标识:

$ jar tvf target/myproject-0.0.1-SNAPSHOT.jar

Spring-boot Getting Started_第10张图片

至此一个spring-boot的‘hello world’已经完成。

你可能感兴趣的:(springboot,springboot)