从零开始学习Spring Boot:构建第一个Web应用

Spring Boot 是一个用于简化 Spring 应用程序开发的框架,它可以让你更专注于业务逻辑而不是配置。本文将带您创建一个简单的 Spring Boot Web 应用程序,并解释每个步骤背后的代码。

步骤1:设置开发环境

首先,确保您的开发环境中已经安装了Java和Maven。接下来,让我们创建一个新的Spring Boot项目。你可以使用Spring Initializer,也可以使用命令行工具。

使用 Spring Initializer 创建项目:

  1. 访问 Spring Initializer 网站。
  2. 选择项目的构建工具(Maven或Gradle)和语言(Java、Kotlin等)。
  3. 添加项目依赖,比如Spring Web和Thymeleaf(用于模板引擎)。
  4. 单击 "Generate" 按钮,下载并解压生成的项目文件。

使用命令行工具创建项目:

shell 复制代码
# 使用 Spring Boot CLI 创建一个新项目
spring init --dependencies=web my-spring-boot-app

步骤2:编写控制器

创建一个控制器类来处理Web请求。在src/main/java/com/example/myspringbootapp目录下,创建一个名为HelloController的Java类。

java 复制代码
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;

@Controller
public class HelloController {
    @GetMapping("/hello")
    public String sayHello() {
        return "hello";
    }
}

在上面的代码中,我们使用@Controller注解将类标记为控制器,并使用@GetMapping注解指定处理GET请求的方法。该方法返回一个字符串 "hello",这将与模板引擎中的视图匹配。

步骤3:创建模板

在src/main/resources/templates目录下,创建一个名为 hello.html 的HTML文件,用于定义视图。这是使用Thymeleaf模板引擎的一个示例:

html 复制代码
<!DOCTYPE html>
<html>
<head>
    <title>Hello Spring Boot</title>
</head>
<body>
    <h1 th:text="${'Hello, Spring Boot!'}"></h1>
</body>
</html>

步骤4:运行应用程序

现在,您可以运行您的Spring Boot应用程序。使用命令行,进入项目的根目录并执行以下命令:

shell 复制代码
mvn spring-boot:run

或者,您可以在您的集成开发环境中运行主应用程序类(通常是MySpringBootApplication.java),然后访问 http://localhost:8080/hello,您将在浏览器中看到 "Hello, Spring Boot!"。

步骤5:总结

恭喜!您已经成功构建了一个简单的Spring Boot Web应用程序。在这个示例中,我们创建了一个控制器来处理Web请求,并使用Thymeleaf模板引擎生成视图。这只是Spring Boot的一个小部分,您可以通过添加更多依赖和功能来扩展您的应用程序。

希望这篇文章对您理解Spring Boot的基础有所帮助。您可以探索更多的Spring Boot功能,例如数据库访问、安全性、微服务等等,以构建更丰富和功能强大的应用程序。


相关推荐
晓得迷路了40 分钟前
栗子前端技术周刊第 150 期 - Stack Overflow 开发者调查结果、TanStack Start 1.0...
javascript·css·后端
vx_Biye_Design44 分钟前
PHP中医养生馆预约系统60841-计算机课程设计、毕业设计
vue.js·spring boot·后端·mysql·php·课程设计·express
IT_陈寒44 分钟前
Vite性能优化完全指南
前端·人工智能·后端
黄鹂鸟科技1 小时前
软件定制开发设计要点:从需求梳理、原型确认到敏捷交付与持续维护
后端·物联网·系统架构
Profile排查笔记1 小时前
指纹浏览器 GitHub 项目怎么选?先看仓库交付的是工具、内核还是管理器
前端·人工智能·后端·自动化
高频因子挖掘机1 小时前
多股票行情为什么容易对不齐?用 Pandas MultiIndex 管理标的、日期与缺失值
后端·github·api
高频因子挖掘机1 小时前
Python 量化数据接口设计实战:用数据契约解决字段混乱与回测不一致
后端·github·api
猿究院_夏燊9 小时前
Spring Bean 生命周期
java·后端·spring
CCblandy11 小时前
雪花 ID 四个边界实测:时钟回拨重号 500 个,前端 JSON.parse 直接丢精度
后端·python·算法·性能优化·架构
我是人✓11 小时前
SpringBoot项目的五种创建方式
java·spring boot·后端