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。

相关推荐
子兮曰13 小时前
jev-ultrafast 深度解析:7 秒订机票的浏览器 Agent 是如何炼成的
前端·后端·agent
小羊没烦恼!13 小时前
微服务化的基石——持续集成
java·大数据·word·powerpoint·.net
子兮曰13 小时前
Jev 爆发一周:7 秒 Agent 背后的 System One 生态与三场争议
前端·后端·ai编程
俊昭喜喜里13 小时前
java中的继承和多态的区别
java
小羊没烦恼!13 小时前
初探性能优化——2个月到4小时的性能提升
java·开发语言·windows·算法·c#
爱勇宝13 小时前
ZCode 开源 24 小时:一份没有历史的账本,回答不了"有没有偷代码"
前端·后端·chatglm (智谱)
譕痕13 小时前
JSONObject与JSONArray封装数据格式区别
java·json
胡写代码14 小时前
别再前后端各写一套表单校验了
java·后端
小鱼能吃糖14 小时前
缺陷修复总览 · mall电商项目:5类缺陷,1个病根,4个业务域
java·电商
此时不提桶,更待何时14 小时前
01-06-A-JVM排查实战详解
java·jvm