[Spring Boot 系列教程] 入门

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/github_39939645/article/details/86583893

Spring Boot 简介

首先,让我们来看一下在没有 Spring Boot 的时候,开发一个 Java 程序有多么繁杂。

以开发一个简单的 Hello world 程序开始吧。你要做的事情有:

  • 确定技术选型(Spring, Spring mvc)
  • 创建 maven 项目,添加依赖项
  • 创建相关配置文件
    • web.xml
    • applicationContext.xml
    • dispatcher-servlet.xml
  • 编码实现 hello world
  • 编写 JSP
  • 将项目打成 War
  • 下载和配置 Tomcat 服务器,并将 War 包部署到 Tomcat
  • 运行 Tomcat

在以上的步骤中,你可能会遇到:

  • ClassNotFoundException:没有添加相关依赖
  • NoClassDefFoundError:可能是添加的依赖项有冲突
  • 服务无法启动:配置文件编写错误或是其它原因

这只是一个最简单的 Hello world 项目,却要编写 N 多的配置项,同时还要注意引入依赖项的兼容性问题,这就导致了我们在开发时需要很大的精力去维护这些与业务无关的东西, 使用Spring Boot 就可以让我们避免以上的这些问题,让开发者把时间花在具体业务逻辑的编写上。

开发第一个 Spring Boot 应用

Spring Boot 官方提供了一个在线工具,可以让我们快速生成开发脚手架:在线工具

点击上面的链接之后,我们可以看到以下的画面:

image

这里可以选择构建工具、语言以及 Spring Boot 的版本号,因为我们的项目是基于 1.5.x ,所以我们就选择最新的 GA 版本 1.5.19,构建工具和语言选择为 GradleJava,你也可以根据自身的喜好进行选择。基础信息填写完成后,我们还需要添加 Spring MVC 的依赖,点击 Switch to the full version链接,并勾选 Spring MVC 依赖:

image

最后点击 Gennerate Project 按钮就可以下载项目框架了,我们将它解压至本地并导入到 IDE 中,可以看到项目的基本结构为:

image

其中:

  • Demo01Application Spring Boot 的启动入口类,我们可以通过它的 main 方法来启动服务。
  • resources
    • static:默认的静态资源存储路径。
    • templatesthymeleaf 模板存放路径(Spring Boot 默认使用 thymeleaf 作为模板引擎)。
    • application.propertiesSpring Boot 配置文件。
  • build.gradle settings.gradlegradle 的配置文件。

以下是 build.gradle 中配置的依赖项:

dependencies {
	implementation 'org.springframework.boot:spring-boot-starter-web'
	testImplementation 'org.springframework.boot:spring-boot-starter-test'
}

我们可以看到除了 spring-boot-starter-webspring-boot-starter-test 之外没有任何其他的依赖,因为其它所有需要的依赖项 Spring Boot 都帮我们默认引入了。

下面来实现我们的第一个 Spring Boot 应用:

@RestController
public class HelloWorldController {

    @GetMapping("hello")
    public String hello() {
        return "hello world!";
    }
}

以上的就是我们实现 hello world 需要编写的所有代码,接下来启动服务,在 IDE 中运行 Demo01Application.main 方法,即可启动我们的服务:

image

启动完成后,访问:http://localhost:8080/hello 即可以看到我们编写的 hello world

image

除了编写不到 20 行的 Controller 层代码之外,没有其它任何操作,不需要配置复杂易错的 XML,不需要关心各种框架的依赖冲突,甚至不需要 Web 容器(Spring Boot 会默认使用内嵌的 Tomcat 容器,可以通过配置修改),我们所需要的做的,只是编写业务相关的代码,其它的事情,Spring Boot 都帮我们处理了。

本篇教程到此结束,在下一篇教程中,我将进一步介绍 Spring Boot 的构建、配置、打包和运行。

展开阅读全文

没有更多推荐了,返回首页