Spring Boot 程序的创建和使用
- [一 . 什么是 Spring Boot ? 为什么要学 Spring Boot ?](#一 . 什么是 Spring Boot ? 为什么要学 Spring Boot ?)
- [二 . Spring Boot 的优点](#二 . Spring Boot 的优点)
- [三 . Spring Boot 项目创建](#三 . Spring Boot 项目创建)
-
- [3.1 准备工作](#3.1 准备工作)
- [3.2 创建项目](#3.2 创建项目)
-
- [Spring 目录介绍](#Spring 目录介绍)
- [另一种创建方式 : 网页版](#另一种创建方式 : 网页版)
- [3.3 注意事项 : 包路径错误](#3.3 注意事项 : 包路径错误)
- [四 . 总结](#四 . 总结)
-
- [面试题 : Spring 和 Spring Boot 有什么区别 ?](#面试题 : Spring 和 Spring Boot 有什么区别 ?)
这个专栏给大家介绍一下 Java 家族的核心产品 - SSM 框架
JavaEE 进阶专栏Java 语言能走到现在 , 仍然屹立不衰的原因 , 有一部分就是因为 SSM 框架的存在
接下来 , 博主会带大家了解一下 Spring、Spring Boot、Spring MVC、MyBatis 相关知识点
并且带领大家进行环境的配置 , 让大家真正用好框架、学懂框架
来上一篇文章复习一下吧
点击即可跳转到我的小秘密
一 . 什么是 Spring Boot ? 为什么要学 Spring Boot ?
Spring 的诞生是为了简化 Java 程序的开发的 , 而 Spring Boot 的诞生是为了简化 Spring 程序开发的 .
Spring Boot 翻译过来就是 Spring 的脚手架 , 盖房子的架子就是脚手架,脚手架的作用是砌筑砖墙,浇筑混凝土、方便墙面抹灰,装饰和粉刷的,简单来说,就是使用脚手架可以更方便快速的盖房子 . 而 Spring Boot 就是 Spring 框架的脚手架 , 它就是为了快速开发 Spring 框架而诞生的。
二 . Spring Boot 的优点
- 快速集成框架 , Spring Boot 提供了启动时添加依赖的功能,用于快速集成各种框架。
我们之前的 Spring 程序还是需要创建 Maven , 然后添加依赖等等 , 其实跟之前的 Servlet 没啥太大区别 , 都是有点麻烦的
- 内置运行容器,无需配置 Tomcat 等 Web 容器,直接运行和部署程序
- 快速部署项目,无需外部容器即可启动并运行项目
运行的时候不需要再配置 Tomcat 了 , 就会加快项目部署
- 可以完全抛弃繁琐的 XML,使用注解和配置的方式进行开发
xml 是在注解之前(Java 5)出现的产物 , 首先 xml 本身并不属于一门编程语言 , 有其他方法的话 , 谁还会使用这种麻烦的方式 , 而且我们的 IDEA 对于 xml 的识别也是不太好的 , 经常会误报
- 支持更多的监控的指标,可以更好的了解项目的运行情况
可以通过网络的配置按钮 , 就可以关掉某个项目 .
要不然我们就需要登录 Linux 云服务器 , 然后进行一系列的命令才能把这个服务关掉
三 . Spring Boot 项目创建
3.1 准备工作
IDEA 社区版(2021.3.+)在创建 Spring Boot 之前必须要安装 : Spring Boot Helper 插件
首先点击 File , 然后点击 Settings
然后稍等片刻 , 我们的插件就安装完毕了
那么怎样去验证我们是否安装成功了呢 ?
我们新建一个项目即可
也可以去看一下已安装的插件
3.2 创建项目
要注意修改下面信息 , 跟图片里面保持一致
重点 : 通过这个页面 , 我们就可以非常简单的添加依赖
点击 Finish 之后 , 我们耐心等待
怎么解决呢 ?
然后刷新一下
然后就等他疯狂下载吧 , 第一次基本都很慢 , 但是一定一定要记得把 Maven 配置成国内源(之前介绍过)
前面的图标变色了就是好了
接下来 , 我们在运行一下 , 能够运行 , 就是彻底启动成功了 .
如果如果你还不放心 , 那么我们可以在 com.example.demo 包底下新建一个类 , 叫做 TestController (具体代码含义不必了解)
java
package com.example.demo;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class TestController {
@RequestMapping("/sayhi")
public String sayHi() {
return "Hi,Spring Boot";
}
}
这样我们就能在浏览器通过 环回IP(127.0.0.1) 就能看到输出信息了
那么我们当前 Spring 项目的创建一定是没问题了 , 因为我们都能正常使用了 .
接下来 , 给大家分析一下这么多的目录都是什么 ?
首先 , 先把没有用的目录删掉
Spring 目录介绍
另一种创建方式 : 网页版
先访问网站 : https://start.spring.io/
下载之后 , 然后进行解压 , 然后我们接下来可以把之前说的无效的信息删除掉
然后使用 IDEA 打开
然后就打开了 , 接下来我们编写代码试验一下好不好使
成功运行~
3.3 注意事项 : 包路径错误
目前我们是能够正常运行的
但是加入我们有一天老眼昏花 , 手一抖 , 把 TestController 给拽到别的位置去了
那么这种情况我们还能正常运行吗 ?
这是什么鬼 ?
这就引出了我们 Spring Boot 里面最重要的一个知识点 :
SpringBoot 核心的设计思想 : 约定大于配置
就是听人家的话 , 别乱搞
我们约定 : 所有你需要加载到 Spring Boot 里面的类 , 你都要和启动类 (DemoApplication) 在同一级或者下一级 , 然后 Spring Boot 就会去扫描
可以运行
四 . 总结
Spring Boot 是为了快速开发 Spring 而诞生的,Spring Boot 具备:
- 快速集成框架,Spring Boot 提供了启动添加依赖的功能,用于快速集成各种框架。
- 内置运行容器,无需配置 Tomcat 等 Web 容器,直接运行和部署程序。
- 快速部署项目,无需外部容器即可启动并运行项目。
- 可以完全抛弃繁琐的 XML,使⽤注解和配置的方式进行开发。
- ⽀持更多的监控的指标,可以更好的了解项目的运行情况等特点。
Spring Boot 可使用 IDEA 或网页创建,它的设计思想是约定大于配置,类上标注@SpringBootApplication 就可以启动 Spring Boot 项目了。
面试题 : Spring 和 Spring Boot 有什么区别 ?
首先 , Spring 和 Spring Boot 都属于一家公司
Spring 属于早期的框架 , 它是开源的 , 拥有庞大的社区、用户以及生态链 , 他是一个包含了众多工具和方法的 IoC 容器
Spring Boot 翻译过来就是 Spring 的脚手架 , Spring Boot 创建之初的目的就是加快以及简化 Spring 的开发的 , 随着 Spring 框架的流行以及版本的迭代 , 他的功能越来越多 , 越来越臃肿 , 配置越来越麻烦 , Spring Boot 就应运而生 , Spring Boot 创建的初衷 , 以及现在的目的就是让大家有更好的体验感 .