精进 Spring Boot 01 | Spring Boot 入门,用 Spring Boot 写第一个 Hello World

1、Spring 的优势和困局

Spring 已经发展了很多年,它提供了两种核心机制,控制反转和面向切面来方便地提供 Java Bean,它管控 Bean 从创建到销毁的整个生命周期,并且它扩展了 Bean 的特性。这大大简化了开发人员编写代码的过程,使得开发人员从对象依赖的代码中解放出来。因为这些繁琐的事情由 Spring 自动化地帮忙解决了,开发人员只需要设置一些配置,或者添加一些注解即可。

随着时间的推移,spring版本不断更新迭代。轻量级的spring,慢慢的也变得臃肿。各种新旧技术依然兼容,例如 XML 配置、注解配置、组件扫描和自动组装。各种新旧技术兼容,增加了新手的学习门槛和选择的难度。

XML配置已经不是主流的系统配置方式,各种系统和架构都有去 XML 的趋势。另外,集成第三方框架的时候,Spring 需要进行各种配置,并且还需要考虑他们之间的兼容性。

2、Spring Boot 的诞生

任何一项技术或产品的出现,都是为了解决某些问题。Spring Boot 技术也一样,它的出现是为了解决 Spring 演进过程中产生的某些问题。

为了解决以上诸如此类的问题,Spring 的开发者们推出了一项新技术 Spring Boot,它就像一个基于Spring 技术的脚手架开发框架,它的出现不是为了替换原先的 Spring,而是为了简化 Spring 应用的开发,它使用自动化配置的方式来简化了 Spring 应用的配置,甚至可以不需要配置就能够运行 Spring 应用。


Spring Boot 还管理着第三方插件,例如把 web 服务器 Tomcat 也作为嵌入式组件组装起来。过去的 Tomcat 服务器独立于 Spring 框架,Spring 管不着它。如今 Tomcat 被嵌入 Spring Boot 中,它现在就像是 Spring 的一个可替换的组件。Spring 的主体管控性得到大大的增强和提高。大部分 Spring 应用,无论是简单的 web 应用,还是构建其它复杂的系统,也只需要少量配置和代码就能够完成,这是因为Sping Boot 在底层和背后为我们做了很多东西,使开发者可以更专注于业务逻辑的开发。

3、用 Spring Boot 写一个 Hello World 程序

讲了这么多,我们还是以程序员的惯例,使用 Spring Boot 来写一个 Hello World 程序。

现在假定读者的机器上已经安装了JDK,一般我们选择使用 JDK 8 或 JDK 11 这些稳定 LTS 版本。LTS 是 Long Time Support 的意思,Oracle等官方会对它们长期维护和支持,而其它版本的 JDK 很快就被官方抛弃了。

假定读者已经安装 Maven 和 Jetbrain IntelliJ IDEA,Maven 没装也行,可以使用 IDEA 内置的 Maven,不过一般不建议这么做,内置的版本可能比较老旧。

我们通过两种方式来创建 Spring Boot 程序,先是在 IDEA 中创建 ,另一种是用 Spring 官方的 Starter 工具上创建。接下来再编写我们自己的代码,并运行程序。

3.1 用 IDEA 创建 Spring Boot 框架

点击 IDEA 的 New Project (创建新项目)菜单会弹出下面界面。

在左侧选择“Spring Initializr”,输入如下信息:

Name: HelloWorld

Location: E:\JingjinSpringBoot (读者可以根据自己情况设置放置目录)

Type: 选择 Maven

Language: Java

Group: com.jingjinspringboot

Artifact: HelloWorld

Package name 会自动生成

Java: 选择自己所安装的 JDK

Packaging: Jar

然后点击 Next,如下图选择 Spring Web,我们要用到 Spring MVC,因而需要 Sping Web 的支持。在点击 Finish 完成就可以了。

3.2 在 Spring 官网创建 Spring Boot 框架

进入如下网址:https://start.spring.io/,在页面中输入跟上面 IDEA 一样的信息。点击 Add 按钮添加 Spring Web 的支持。


再点击按钮 “Generate”,浏览器会下载一个压缩包 helloworld.zip,级压缩后就是一个 Spring Boot 程序的基本框架。

4、把代码跑起来

上面两种创建 Spring Boot 框架的方式其实都是一样的。我们用 IDEA 看生成的代码结构如下。

我们利用工具创建了一个 Spring Boot 程序,到目前为止,我们并没有写一行代码。现在尝试跑这个程序,选择菜单 Run | Run 'HelloWorldApplication',或者按快捷键 Shift + F10。

此刻程序跑起来了,出现了 Sping Boot 的图标。

并且输出如下日志,从日志中可以看见,Tomcat 服务器已经启动了,端口 8080。是不是感觉很神奇,此刻我们完全没有写一行代码,程序成功跑起来,日志输出了,Tomcat 服务器也启动了。

5、写我们的Hello World

我们添加一个 HelloController 类,代码和结构如下图。

在浏览器输入网址:http://localhost:8080/hello。此刻看见了程序的返回结果“Hello, Spring Boot!”

这篇 Sping Boot 的介绍文章就写到这里,之后飞仙会继续写 Spring Boot。

Enjoy Coding.

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 218,546评论 6 507
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,224评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,911评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,737评论 1 294
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,753评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,598评论 1 305
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,338评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,249评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,696评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,888评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,013评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,731评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,348评论 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,929评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,048评论 1 270
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,203评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,960评论 2 355

推荐阅读更多精彩内容