Spring Boot 入门

1.1.1 什么是Spring Boot

**Spring Boot是一个开源的Java应用框架,由Pivotal团队提供,旨在简化Spring应用的初始搭建以及开发过程。**‌ Spring Boot通过使用特定的配置方式,使得开发人员不再需要定义样板化的配置,从而在快速应用开发领域成为领导者。它的设计目的是为了消除大量的配置工作,通过自动配置来简化项目的创建和运行过程,使得开发者能够更快速地构建和部署基于Spring的应用。 Spring Boot遵循"约定优于配置"的原则,集成了绝大部分流行的开发框架,就像Maven集成了所有的JAR包一样,Spring Boot集成了几乎所有的框架,从而使得开发者能快速搭建Spring项目。

Spring Boot的官方定义是所有基于Spring开发项目的起点,它提供了快速构建微服务应用的能力,可以秒级创建一个微服务应用

1.1.2 Spring Boot 的优势

其实就是简单、快速、方便!平时如果我们需要搭建一个Spring Web 项目的时候需要怎么做呢?

  • 配置 web.xml,加载 Spring 和 Spring mvc
  • 配置数据库连接、配置 Spring 事务
  • 配置加载配置文件的读取,开启注解
  • 配置日志文件
  • ......
  • 配置完成之后部署 Tomcat 调试
  • ......

使用 Spring Boot 开发项目,有以下几个方面优势:

  • Spring Boot 使开发变得简单,提供了丰富的解决方案,快速集成各种解决方案提升开发效率。
  • Spring Boot 使配置变得简单,提供了丰富Staters,集成主流开源产品往往只需要简单的配置即可
  • Spring Boot 使部署变得简单,其本身内嵌启动容器,仅仅需要一个命令即可启动项目,结合Jenkins、DoCker 自动化运维非常容易实现。
  • Spring Boot 使监控变得简单,自带监控组件,使用 Actuator 轻松监控服务各项状态。

1.2 快速上手

说了那么多,手痒痒的很,马上来一发试试!

1.2.1 依赖环境

  • Ant (AnotherNeatTool)的核心是由Java编写,采用XML作为构建脚本,这样就允许你在任何环境下运行构建,Ant 是Java领域最早的构建工具,不过因为操作复杂,慢慢的已经被淘汰了。
  • Maven,Maven 发布于2004年,目的是解决程序员使用Ant所带来的一些问题,它的好处在于可以将项目过程规范化,自动化,高效化,以及强大的可扩展性。
  • Gradle,Gradle是一个基于Apache Ant 和Apache Maven 概念的项目自动化构建工具。它使用一种基于Gradle 的特定领域语言来声明项目设置,而不是传统的XML。结合了前两者的优点,在此基础之上做了很多改进,它具有Ant的强大和灵活,又有Maven的生命周期管理且易于使用。

1.2.2 构建项目

我没有两种方式来构建 Spring Boot 项目基础框架,第一种是使用 Spring 官方提供的构建页面,第二种是使用 Intellij IDEA 中的 Spring 插件来创建。

1.2.2.1 使用 Spring 官方提供页面构建

1、访问 http://start.spring.io/

2、选择构建工具 Maven Project、Java、Spring Boot 版本 2.1.15、Spring Web 依赖以及一些工程基本信息,可参考下图所示:

3、点击 Generate - Ctrl + 下载项目压缩包

4、解压后,使用 IDEA 导入项目,File -> New -> Model from Existing Source.. -> 选择解压后的文件夹 -> OK,选择 Maven 一路 Next,OK done!

5、如果使用的是Ecilpse,Import -> Existing Maven Projects -> Next -> 选择解压后的文件夹 -> Finsh,OK done!

1.2.2.2 使用 IDEA 构建

1、选择 File -> New -> Project... 弹出新建项目的框

2、选择 Spring Initiailaz,Next 也会出现上述类似的配置界面,IDEA 帮我们做了集成。如果没有 Spring Initializr 选项,可以进入 Settings,选择Plugins,输入 spring 搜索,找到 Spring Boot

勾选上,在重启就可以了。

3、填写相关内容后,点击 Next 选择使用的版本及依赖的包,再点击 Next ,最后确定信息无误点击 Finish。

相关推荐
Java微观世界2 分钟前
Object核心类深度剖析
java·后端
MrSYJ7 分钟前
为什么HttpSecurity会初始化创建两次
java·后端·程序员
hinotoyk12 分钟前
TimeUnit源码分享
java
用户48221371677523 分钟前
C++——类和对象
后端
bcbnb1 小时前
移动端webview网页调试实战,首屏加载缓慢问题的排查与优化
后端
00后程序员1 小时前
Charles抓包工具全面解析 API调试与网络分析的必备利器
后端
AAA修煤气灶刘哥1 小时前
Java+AI 驱动的体检报告智能解析:从 PDF 提取到数据落地全指南
java·人工智能·后端
xcya1 小时前
深入理解“看门狗”机制:一种优雅的自动续期模式
后端
行路难多歧路今安在1 小时前
开源算法or-tools运用之背包问题
后端
wxy3191 小时前
嵌入式LINUX——————TCP并发服务器
java·linux·网络