SpringBoot - 详细入门教程(创建、运行项目,REST服务样例)

Spring Boot 和 Spring Cloud 已成为当前最流行的微服务框架。本文通过样例演示如何搭建并运行一个简单的 Spring Boot 项目。在开发之前,首先确认我们的电脑上已经有以下环境:

  • JDK8
  • Maven3.0+
  • Intellij IDEA

一、创建项目
创建项目一共有两种方式,下面分别进行介绍。
1,在线创建项目
(1)在线创建是 Spring Boot 官方提供的一种创建方式,在浏览器中访问如下网址:
https://start.spring.io/
(2)在打开的页面中我们可以选择项目的构建工具是 Maven 还是 Gradle、语言是 Java 还是其它、要使用的 Spring Boot 版本号、项目的组织 Id(包名)、模块名称以及项目的依赖。
因为我要创建一个 SpringBoot 项目,所以项目依赖这块我们输入 Web 回车后进行添加。

SpringBoot - 详细入门教程(创建、运行项目,REST服务样例)_第1张图片


(3)所有信息填写完毕后,点击下方的“Generate Project”按钮即可将生成的模版下载到本地,解压后使用 IDE 打开即可开始项目的开发了。

2,使用 Intellij IDEA 创建
(1)创建项目时选择 Spring Initializr

SpringBoot - 详细入门教程(创建、运行项目,REST服务样例)_第2张图片

接着输入项目的基本信息,包括组织 Id、模块名称、项目构建类型、最终生成包的类型、Java 的版本、开发语言、项目版本号、项目描述以及项目的包。
(2)接着选择项目所需要的依赖,之后 Intellij IDEA 会自动把选中的依赖添加到项目的 pom.xml 文件中。
因为我要创建一个 SpringBoot 项目,所以这里我们添加了个 Web 依赖。

SpringBoot - 详细入门教程(创建、运行项目,REST服务样例)_第3张图片

二、运行项目
有三种不同的方式启动项目,下面分别进行介绍。
1,使用 Maven 命令启动
(1)打开终端进入项目文件夹,执行如下 mvn 命令启动项目:
mvn spring-boot:run
(2)启动完毕后终端会显示成功信息。

SpringBoot - 详细入门教程(创建、运行项目,REST服务样例)_第4张图片

(3)使用浏览器访问 http://localhost:8080/ 则可显示项目主页。

SpringBoot - 详细入门教程(创建、运行项目,REST服务样例)_第5张图片

2,直接运行 main 方法
(1)在 Intellij IDEA 中右键点击 App 类,然后点击 run 按钮即可启动项目。

SpringBoot - 详细入门教程(创建、运行项目,REST服务样例)_第6张图片

(2)项目启动后控制台中可以看到相关的启动信息。

SpringBoot - 详细入门教程(创建、运行项目,REST服务样例)_第7张图片

3,打包启动
Spring Boot 应用也可以直接打成 jar 包运行。在生产环境中,常常通过这样的方式来运行一个 Spring Boot 应用。
(1)打开终端进入项目文件夹,执行如下 mvn 命令进行打包。
mvn package
(2)如果使用的是 Intellij IDEA,我们还可以点击界面右侧的 Maven -> Lifecycle -> package 进行打包。

SpringBoot - 详细入门教程(创建、运行项目,REST服务样例)_第8张图片


(3)上面打包方式的前提是项目使用了 spring-boot-starter-parent 作为 parent,不过在大部分项目中,项目的 parent 可能并不是 spring-boot-starter-parent,而是公司内部定义好的一个配置,此时 spring-boot-maven-plugin 插件并不能直接使用,我们只要做如下额外的配置即可。配置完毕后就和之前一样,可以通 Maven 命令或者 IntelliJ IDEA 中的 Maven 插件进行打包。

org.springframework.boot spring-boot-maven-plugin repackage

(4)打包完成后,在项目的 target 目录下会生成一个 jar 文件。

SpringBoot - 详细入门教程(创建、运行项目,REST服务样例)_第9张图片


(5)通过 java -jar 命令可以直接启动这个 jar 文件。
java -jar demo-0.0.1-SNAPSHOT.jar
(6)我们还可以在命令后面加个 &,表示后台运行。
java -jar demo-0.0.1-SNAPSHOT.jar &
(7)由于在生产环境中,Linux 大多数情况下都是远程服务器,然后使用远程工具连接 Linux。如果使用上面命令启动 JAR,一旦窗口关闭,JAR 也就停止运行了,因此一般通过如下命令启动 JAR:
注意:nohup 表示当窗口关闭时服务不挂起,继续在后台运行。
nohup java -jar demo-0.0.1-SNAPSHOT.jar &

三、一个简单的 RESTful 服务样例
(1)首先我们在项目中新建一个名为 HelloController 的 Java 类
(2)该类里面的内容如下:

  • @RestController 注解:告诉 Spring 以字符串的形式渲染结果,并直接返回给调用者。该注解相当于 @ResponseBody + @Controller 合在一起的作用。
  • @RequestMapping 注解:提供路由信息,它告诉 Spring 任何来自“/hello”路径的 HTTP 请求(Get)都应该被映射到 hello 方法。


import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.GetMapping; @RestController public class HelloController { @GetMapping("/hello") public String hello() { return "hello"; } }


(3)运行启动程序后,访问 http://localhost:8080/hello 就可以访问这个 controller 的功能了。


早年同窗始相知,三载瞬逝情却萌。年少不知愁滋味,犹读红豆生南国。别离方知相思苦,心田红豆根以生。

你可能感兴趣的:(java,程序员,程序人生,spring,boot,java,spring)