欢迎来到从零开始学Spring Boot的旅程!在这个系列的第二篇文章中,我们将从一个非常基础但重要的示例开始:创建一个简单的Spring Boot应用程序,并输出“Hello World”。

1. 环境准备

首先,确保你的开发环境已经安装了以下工具:

  • Java Development Kit (JDK) :Spring Boot需要Java来运行,所以你需要安装JDK。可以从Oracle官网下载最新版本的JDK。本文使用的是jdk-17.0.9
  • IDE(集成开发环境) :虽然Spring Boot可以在任何文本编辑器中编写和运行,但使用IDE可以大大提高开发效率。推荐的IDE包括IntelliJ IDEA、Eclipse和Spring Tool Suite等,本文使用的是 IntelliJ IDEA 2023.3.3。
  • Maven或Gradle :Spring Boot使用Maven或Gradle作为构建工具。这两个工具都能帮助你管理项目依赖,构建和打包应用程序。本文使用的是Gradle 8.3

2. 创建Spring Boot项目

本文为大家提供两种创建Spring Boot项目的方式。

使用官方Spring Initializr创建

  • 你可以使用Spring Initializr(https://start.spring.io/)来快速生成一个Spring Boot项目的骨架。在这个网站上,你可以选择项目类型(Maven或Gradle)、项目元数据(Group、Artifact、Name、Description等)、包结构(Java包名)、依赖项(例如Spring Web、Lombok等)等。为了这个“Hello World”示例,我们只需要最基本的Spring Boot项目。选择Gradle作为构建工具,然后添加必要的依赖。点击“Generate”按钮下载ZIP文件,解压后导入到你的IDE中



  • 使用IntelliJ IDEA创建 Spring Boot项目的骨架,在菜单栏File选项,选择New Project。在页面选择Spring Initializr,选择项目类型(Maven或Gradle)、项目元数据(Group、Artifact、Name、Description等)、包结构(Java包名),选择Next。



    选择Spring Boot版本,依赖项(例如Spring Web、Lombok等)。点击Create。

3. 编写 HelloWorldController

在IntelliJ IDEA 中打开项目后,你会看到一个默认生成的SpringbootLearningApplication类。这个类包含一个main方法,它是程序的入口点。

我们创建一个HelloWorldController,在这个类中,我们将添加一个简单的控制器来输出“Hello World”。

在HelloWorldController使用@RestController注解标记它。这个类包含一个名为helloWorld的方法,该方法使用@GetMapping注解标记,表示当访问应用的根URL(/)时,将调用这个方法。该方法返回一个字符串"Hello World"。

现在,你可以运行SpringbootLearningApplication类中的main方法来启动Spring Boot应用程序。如果你的idea配置正确,你可以直接点击运行按钮来启动应用程序。

当应用程序启动后,你应该能在控制台看到类似于以下的输出:

这表明Spring Boot应用程序已成功启动。现在,你可以打开浏览器并访问http://localhost:8080(默认端口是8080,但可能会因你的配置而异)。你应该能在浏览器中看到“Hello World”这几个字。

4. 总结

在这个“Hello World”示例中,我们创建了一个简单的Spring Boot应用程序,并输出了“Hello World”。虽然这个示例很简单,但它展示了Spring Boot的基本结构和如何使用控制器来处理HTTP请求。在后续的文章中,我们将深入探讨Spring Boot的更多特性和功能,包括数据访问、安全性、RESTful API等。敬请期待!

从零开始学Spring Boot系列-Hello World的更多相关文章

  1. 53. spring boot系列合集【从零开始学Spring Boot】

    前40章节的spring boot系列已经打包成PDF在csdn进行发布了,如果有需要的可以进行下载. 下载地址:http://download.csdn.net/detail/linxinglian ...

  2. 57. Spring 自定义properties升级篇【从零开始学Spring Boot】

    之前在两篇文章中都有简单介绍或者提到过 自定义属性的用法: 25.Spring Boot使用自定义的properties[从零开始学Spring Boot] 51. spring boot属性文件之多 ...

  3. 21. Spring Boot过滤器、监听器【从零开始学Spring Boot】

    转载:http://blog.csdn.net/linxingliang/article/details/52069490 上一篇文章已经对定义Servlet 的方法进行了说明,过滤器(Filter) ...

  4. 81. Spring Boot集成JSP疑问【从零开始学Spring Boot】

    [原创文章,转载请注明出处] 针对文章: ()Spring Boot 添加JSP支持[从零开始学Spring Boot] 有网友提了这么一些疑问: 1.Spring Boot使用jsp时,仍旧可以打成 ...

  5. 78. Spring Boot完美使用FastJson解析JSON数据【从零开始学Spring Boot】

    [原创文章,转载请注明出处] 个人使用比较习惯的json框架是fastjson,所以spring boot默认的json使用起来就很陌生了,所以很自然我就想我能不能使用fastjson进行json解析 ...

  6. 77. Spring Boot Use Thymeleaf 3【从零开始学Spring Boot】

    [原创文章,转载请注明出处] Spring Boot默认选择的Thymeleaf是2.0版本的,那么如果我们就想要使用3.0版本或者说指定版本呢,那么怎么操作呢?在这里要说明下 3.0的配置在spri ...

  7. 75. Spring Boot 定制URL匹配规则【从零开始学Spring Boot】

    在之前有一篇文章说了,博客名称从原来的<从零开始学Spring Boot>更改为<Spring Boot常见异常汇总>,后来写了几篇文章之后发展,有些文章还是一些知识点,所以后 ...

  8. 74. Spring Data JPA方法定义规范【从零开始学Spring Boot】

    [从零开始学习Spirng Boot-常见异常汇总] 事情的起因:有人问过我们这个这个问题:为什么我利用Spring data jpa写的方法没有按照我想要的情况进行执行呢?我记得当时只是告诉他你你先 ...

  9. 72.spring boot讨论群【从零开始学Spring Boot】

    [从零开始学习Spirng Boot-常见异常汇总] 如果您碰到什么问题,您可以加群进行探讨,在群里有加入的都是Spring Boot志同道合的朋友: Spring Boot QQ交流群:193341 ...

  10. 71.mybatis 如何获取插入的id【从零开始学Spring Boot】

    [从零开始学习Spirng Boot-常见异常汇总] 在之前的文章已经讲过spring boot集成mybatis了,但是忘记说一个很重要的知识点了,那就是获取获取主键id,这篇文章补充下,sprin ...

随机推荐

  1. [转帖]比较不同CPU下的分支预测

    https://plantegg.github.io/2023/04/16/%E6%AF%94%E8%BE%83%E4%B8%8D%E5%90%8CCPU%E4%B8%8B%E7%9A%84%E5%8 ...

  2. 每日一道Java面试题:方法重载与方法重写,这把指定让你明明白白!

    写在开头 请聊一聊Java中方法的重写和重载? 这个问题应该是各大厂面试时问的最多的话题之一了,它们几乎贯穿了我们日常的开发工作,在过往的博客中我们多多少少都提到过重载与重写,而今天我们就一起来详细的 ...

  3. 京东云开发者|提高IT运维效率,深度解读京东云AIOps落地实践

    基于深度学习对运维时序指标进行异常检测,快速发现线上业务问题 时间序列的异常检测是实际应用中的一个关键问题,尤其是在 IT 行业.我们没有采用传统的基于阈值的方法来实现异常检测,而是通过深度学习提出了 ...

  4. MySQL控制权限

    编写顺序和执行顺序是不一样的 编写顺序: SELECT 字段列表 FROM 表名列表 WHERE 条件列表 GROUP BY 分组字段列表 HAVING 分组后条件列表 ORDER BY 排序字段列表 ...

  5. 基于go-restful实现的PoW算力池模型

    最开始知道区块链是在17年初,当时因为项目压力不大,开始研究比特币源码.对于比特币中提到的Proof of Work,当时只是一眼带过,并没有详细查看过相关的代码.在最近的项目中,考虑到性能的要求,需 ...

  6. vim 从嫌弃到依赖(11)——标签页操作

    各位小伙伴们,你们好,我又更新了! 之前介绍了vim关于多窗口的操作,vim中多窗口是将多个窗口在一个屏幕中显示,这似乎与我们常见的ide有点不一样,一般的ide都是新开一个窗口之后在新的标签页中显示 ...

  7. C++ Qt开发:数据库与TableView多组件联动

    Qt 是一个跨平台C++图形界面开发库,利用Qt可以快速开发跨平台窗体应用程序,在Qt中我们可以通过拖拽的方式将不同组件放到指定的位置,实现图形化开发极大的方便了开发效率,本章将重点介绍TableVi ...

  8. 20.6 OpenSSL 套接字分发RSA公钥

    通过上一节的学习读者应该能够更好的理解RSA加密算法在套接字传输中的使用技巧,但上述代码其实并不算完美的,因为我们的公钥和私钥都必须存储在本地文本中且公钥与私钥是固定的无法做到更好的保护效果,而一旦公 ...

  9. C/C++ Npcap包实现数据嗅探

    npcap 是Nmap自带的一个数据包处理工具,Nmap底层就是使用这个包进行收发包的,该库,是可以进行二次开发的,不过使用C语言开发费劲,在进行渗透任务时,还是使用Python构建数据包高效,这东西 ...

  10. 【Matlab】蒙特卡罗法模拟圆周率+对应解析的GIF生成【超详细的注释和解释】

    文章目录 前言 模拟思路 GIF模拟动图的生成 GIF动图生成的基本思路 单张静态图的生成 GIF的生成 尾声 前言 因为博主最近要准备数学建模大赛了,在学习matlab和python之余,博主也会继 ...