文章目录
1.SpringBoot介绍
1.1 SpringBoot的主要优点
2.什么是微服务架构?
2.1之前与现在的架构对比
3.IDEA实现SpringBoot创建
3.1 SpringBoot中的Pom xml依赖介绍
4.端口号及启动Logo的配置
1. SpringBoot介绍
SpringBoot 概述
- Spring Boot基于Spring 开发,Spirng Boot 本身并不提供 Spring 框架的核心特性以及扩展功能。
- Spring Boot只是用于快速、敏捷地开发新一代基于 Spring 框架的应用程序,也就是说,它并不是用来替代 Spring 的解决方案而是和
Spring 框架紧密结合用于提升 Spring 开发者体验的工具。 - Spring Boot 以约定大于配置的核心思想,默认帮我们进行了很多设置,多数 Spring Boot 应用只需要很少的 Spring 配置。同时它集
成了大量常用的第三方库配置(例如 Redis,MongoDB、Jpa、RabbitMQ、Quartz 等等),Spring Boot 应用中这些第三方库几
乎可以零配置的开箱即用。 - 简单来说就是SpringBoot其实不是什么新的框架,它默认配置了很多框架的使用方式,就像maven整合了所有的jar包,spring boot整合了所有的框架 。
1.1 SpringBoot的主要优点
1. 优点
⑴ 为所有Spring开发者更快的入门。
⑵ 开箱即用,提供各种默认配置来简化项目配置。
⑶ 内嵌式容器简化Web项目。
⑷ 没有冗余代码生成和XML配置的要求。
2. 什么是微服务架构?
- 微服务架构介绍
现在的微服务架构–>就类似将每个业务独立成一个个模块。
⑴ 首先:一个业务就是一个service,service包下的一个业务在Service接口和ServiceImpl类下做实现。
⑵ 其次:随着service的业务越变越多,单机存放不下,就需要将一个一个业务服务单独放一个电脑。
⑶ 然后:因此单机放不下多个业务服务,就需要将一个个业务独立独立成一个个模块,放在一台单独的电脑上。
⑷ 之后:springMVC中的controller(控制层)就负责提供接口,产生多个接口,对应的多个业务就分布在多台电脑上。
⑸ 最后:小结–>微服务就是将我们原来的业务拆分成一个一个模块。
2.1 之前与现在的架构对比
- 回顾之前的单体架构:将数据库访问,web访问等各个功能都放在一个war包,方便部署开发和测试,但是修改一个地方整个服务要停掉再改。
- 现在的微服务架构:把每个服务独立出来,一个服务就是一个接口(Controller层的URL接口请求)。
3. IDEA实现SpringBoot创建
1. 环境准备:
java version "1.8.0_181"
Maven-3.6.1
SpringBoot 2.x 最新版
开发工具:IDEA
2. 开始创建SpringBoot,步骤如下所示:
⑴ 第一步:双击IDEA,点击"new Project"进入"图a2"创建SpringBoot项目。若是在已打开一个IDEA项目的情况下,点击左上方的File创建SpringBoot项目"图a1"。
⑵ 第二步:进入"图a2"选择左边Spring Initializr其他默认,点击Next。
⑶ 第三步:输入SpringBoot项目的:包名,java版本等基本信息"图a3",点击Next。
⑷ 第四步:选择创建SpringBoot的依赖和版本(这里依赖也可以不勾选)"图a4",点击Next。
⑸ 第五步:输入项目名和SpringBoot项目的存放地址"图a5",点击Finish。
- 注意:("图a5"里面的"Project Name")与("图a3"里面的"artifact")是一样的,都是代表:项目名的意思。
⑹ 第六步:最后就完成一个SpringBoot的创建"图a6"。
⑺ 第七步:然后删除多余的文件目录,得到"图b1"("图b2"是"图b1"的展开)。
3. 注意点:
⑴ 创建完成的Springboot项目可以只保留:.idea + src + pom.xml + 项目名.impl + External Libraires + Scratches and Consoles
⑵ 当创建controller+pojo+dao+service等等包,这些包创建的位置必须是和启动类处于同级目录下才可以!这样SpringBoot才可以解析得到我们创建的包。
图a1
图a2
图a3
图a4
图a5
图a6
图b1
图b2
3.1 SpringBoot中的Pom.xml依赖介绍
① pom.xml介绍!
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
##1. SpringBoot的父项目
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.3.5.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
##2. groupId + artifactId + version 这个项目模块的坐标
<groupId>com.example</groupId>
<artifactId>demo</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>demo</name>
<description>Demo project for Spring Boot</description>
##3.java的版本
<properties>
<java.version>1.8</java.version>
</properties>
<dependencies>
##4. SpringBoot的启动器(run())
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
##5. 单元测试
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
##6. <!-- 剔除依赖 -->
<exclusions>
<exclusion>
<groupId>org.junit.vintage</groupId>
<artifactId>junit-vintage-engine</artifactId>
</exclusion>
</exclusions>
</dependency>
##7."spring-boot-starter-web"是引入的一个Web依赖!
##7.1 web依赖帮我们自动引入了:自动帮我们集成一个tomcat,使用
tomcat作为默认嵌入式容器。
##7.2 web依赖帮我们自动引入了:自动帮我们配置
dispartcherServlet和.xml
##7.3 有了下面这个依赖才可以启动得了tomcat,启动得了Run()项目
##7.4 就是一个--web场景启动器--
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
##8.打jar包插件,如何打Jar呢?在IDEA右边Maven里面有一
个"Lifecycle"-->
##8.1 点击"Lifecycle"下的"package"双击即可打包-->就会在IDEA左边"Target"-->
##8.2 "pageage"双击打包成功。就会在"target"生成一个.jar包,双击此jar包。输入
##8.3 双击此jar包,输入:java -jar jar名即可运行此项目,直接可网页访问此服务。
##8.4 记住:这个jar包就是一个接口程序。我们双击启动这个jar包接
口程序,直接网页即可访问对应接口!
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
▲:以上可以看出所有SpringBoot的依赖都是以spring-boot-starter
开头的!
⑴. package生成的jar包,就是一个接口程序,一个微服务就是一个jar
包(接口程序或服务)。
⑵. 真正的前后端分离出来的一个个程序,提供出去的就是这一个一个的
jar包。
⑶. 一个jar包,就是一个服务!
⑷. 微服务的开发就是每一个接口对应的服务,打包生成一个个可执行的
jar包。
# 若修改完代码后,有时需要重启SpringBoot项目让代码生效,但也可
以不重启。因为SpringBoot的项目里面有一个"热部署",可以在新建
SpringBoot项目的时候导入一个"热部署"的依赖,即可实现:就算代码
改动了,就算不重启SpringBoot项目,修改的代码也可以生效!
4. 端口号及启动Logo的配置
① 配置文件中:更改端口号
- 在配置文件中server.port = 8081 改为自己要修改的端口号即可!
② 更改启动项目的的图标logo
- 第一步:在resources包下新建一个banner.txt
- 第二步:在此链接寻找对应的logo图案:
https://www.bootschool.net/ascii
复制黏贴到banner.txt里面。
- 第三步:启动SpringBoot项目,即可看到,如-"图c1"
图c1