前言
什么是 Spring Boot?
Spring Boot 是由 Pivotal 团队提供的全新框架。Spring Boot 是所有基于 Spring Framework 5.0 开发的项目的起点。Spring Boot 的设计是为了让你尽可能快的跑起来 Spring 应用程序并且尽可能减少你的配置文件。
设计目的: 用来简化新 Spring 应用的初始搭建以及开发过程。
从最根本上来讲,Spring Boot 就是一些库的集合,它能够被任意项目的构建系统所使用。它使用 “习惯优于配置” (项目中存在大量的配置,此外还内置一个习惯性的配置)的理念让你的项目快速运行起来。用大佬的话来理解,就是 spring boot 其实不是什么新的框架,它默认配置了很多框架的使用方式,就像 maven 整合了所有的 jar 包,spring boot 整合了所有的框架,总结一下及几点:
(1)为所有 Spring 开发提供一个更快更广泛的入门体验。
(2)零配置。无冗余代码生成和XML 强制配置,遵循“约定大于配置” 。
(3)集成了大量常用的第三方库的配置, Spring Boot 应用为这些第三方库提供了几乎可以零配置的开箱即用的能力。
(4)提供一系列大型项目常用的非功能性特征,如嵌入式服务器、安全性、度量、运行状况检查、外部化配置等。
(5)Spring Boot 不是Spring 的替代者,Spring 框架是通过 IOC 机制来管理 Bean 的。Spring Boot 依赖 Spring 框架来管理对象的依赖。Spring Boot 并不是Spring 的精简版本,而是为使用 Spring 做好各种产品级准备
环境准备
- JDK 环境必须是 1.8 及以上,传送门:jdk1.8下载
- 后面要使用到 Maven 管理工具 3.2.5 及以上版本,所以会先介绍 Maven 的安装与配置
- 开发工具建议使用 IDEA,也可以 MyEclipse,为了实现一站式服务,传送门:idea下载
Maven 安装与环境变量配置
(1)Maven 安装:
在官网下载:https://maven.apache.org/download.cgi
(2)Maven软件的安装:
Maven 下载后,将 Maven 解压到一个没有中文没有空格的路径下,比如:D:\software\maven 下面。 解压后目录结构如下:
- bin:存放了 maven 的命令
- boot:存放了一些 maven 本身的引导程序,如类加载器等
- conf:存放了 maven 的一些配置文件,如 setting.xml 文件
- lib:存放了 maven 本身运行所需的一些 jar 包
(3)Maven 配置环境变量:
- 新建变量名:MAVEN_HOME 变量值:H:\software\maven\apache-maven-3.6.0(这是我的 MAVEN 路径)
- 编辑变量名:Path 在最前面加上:%MAVEN_HOME%\bin
(4)检查是否配置成功:
win+R 打开dos窗口,通过 mvn -v命令检查 maven 是否安装成功,看到 maven 的版本为 3.6.0 及 java 版本为 jdk-8 即为安装 成功。 打开命令行,输入 mvn –v命令,如下图:
(5)配置 maven 仓库:
1.打开 maven 文件夹下的 config 文件夹下的 settings.xml;
2.找到 localRepository 标签,此时是被注释掉的,我们解除注释,然后配置一个路径,例如:D:/space/MavenRepository/maven_jar,这样以后 MAVEN 管理下载的jar 包都会在这个路径下。
【注意】:注意结点的位置,先找到注释掉的部分,贴在下面
<localRepository>D:\space\MavenRepository\maven_jar</localRepository>
3.配置阿里云远程仓库
Maven默认的远程仓库是在国外, 所以下载jar包时速度会非常慢, 这里推荐大家使用阿里云仓库
打开 settings.xml,找到 标签 , 下面的内容复制到 中 即可
<mirror>
<id>alimaven</id>
<name>aliyun maven</name>
<url>
http://maven.aliyun.com/nexus/content/groups/public/
</url>
<mirrorOf>central</mirrorOf>
</mirror>
(6)在 idea 配置 maven:
点击【File】>【Settings】>搜索【Maven】,按截图配置安装目录和选择刚刚 settings 配置文件;
选择完settings之后,本地仓库自动改成settings文件中配置的;点击apply,再点击ok即配置完成。
一、Spring Boot基础应用
Spring Boot特征
概念:
约定优于配置,简单来说就是你所期待的配置与约定的配置一致,那么就可以不做任何配置,约定不符合期待时才需要对约定进行替换配置。
特征:
1. SpringBoot Starter:他将常用的依赖分组进行了整合,将其合并到一个依赖中,这样就可以一次性添加到项目的Maven或Gradle构建中。
2,使编码变得简单,SpringBoot采用 JavaConfig的方式对Spring进行配置,并且提供了大量的注解,极大的提高了工作效率,比如@Configuration和@bean注解结合,基于@Configuration完成类扫描,基于@bean注解把返回值注入IOC容器。
3.自动配置:SpringBoot的自动配置特性利用了Spring对条件化配置的支持,合理地推测应用所需的bean并自动化配置他们。
4.使部署变得简单,SpringBoot内置了三种Servlet容器,Tomcat,Jetty,undertow.我们只需要一个Java的运行环境就可以跑SpringBoot的项目了,SpringBoot的项目可以打成一个jar包。
Spring Boot创建
使用 idea 快速搭建 Spring Boot
第一步:新建 Spring Initializr 项目:
2.填写Group 和 Artifact 信息
选择对应的开发语言,打包方式,Java 版本等 ,点击 Next;
3.选择 Web 依赖 和 Spring Boot 版本号
点击 Next
4.勾选 SQl 下的 MySQL,MyBatis 依赖:
(根据自己的项目选择,后面可加)
5.选择好项目的位置,
点击【Finish】
6.创建成功
如果是第一次配置 Spring Boot 的话可能需要等待一会儿 IDEA 下载相应的 依赖包,默认创建好的项目结构如下:
项目结构还是看上去挺清爽的,少了很多配置文件,我们来了解一下默认生成的有什么:
SpringbootApplication: 一个带有 main() 方法的类,用于启动应用程序
SpringbootApplicationTests:一个空的 Junit 测试了,它加载了一个使用 Spring Boot 字典配置功能的 Spring 应用程序上下文
application.properties:一个空的 properties 文件,可以根据需要添加配置属性
pom.xml: Maven 构建说明文件
配置application.properties文件:
1、服务器配置
# 服务器端口
server.port=8080
# 上下文路径
server.servlet.context-path=/myapp
# 服务器地址(如果非本机)
server.address=localhost
2、 数据源配置
# 数据源URL
spring.datasource.url=jdbc:mysql://localhost:3306/mydb
# 数据库用户名
spring.datasource.username=root
# 数据库密码
spring.datasource.password=secret
# 数据库驱动
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
可以在pom.xml里面手动添加一个依赖
如:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>2.5.4</version>
</dependency>
二、测试项目
新建Java文件
在 【main/java/com.xpwi.springboot】包下新建一个Controller包:再新建一个HelloController
package com.xpwi.springboot;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class HelloController {
@RequestMapping("/hello")
public String hello() {
return "Hello Spring Boot!";
}
}
利用 IDEA 启动 Spring Boot
(1)我们回到 SpringbootApplication 这个类中,然后右键点击运行:
(2)如果提示 Maven 导包,点击就点import或者enable
(3)注意:
我们之所以在上面的项目中没有手动的去配置 Tomcat 服务器,是因为 Spring Boot 内置了 Tomcat
等待一会儿就会看到下方的成功运行的提示信息:
(4)此时,可以看到我们的 Tomcat 运行在 8080 端口,我们来访问下面地址试一下: