官网:相关内容可以去 Spring Boot 官网 看看!!!
1.1 来源Spring Boot 是伴随着 Spring 4.0 诞生的,从字面理解,Boot是引导的意思,因此 Spring Boot 旨在帮助开发者快速搭建 Spring 框架。Spring Boot 继承了原有 Spring 框架的优秀基因,使 Spring 在使用中更加方便快捷。
1.2 优点从上面的描述中,我们就可以看到Spring Boot是做什么的。我感觉其最大的优点就是简化。从编码、配置、部署、监控等相关层面简化。
1.3 举个简单例子1.简化配置,不需要编写太多的xml配置文件
2.基于Spring构建,使开发者快速入门,门槛相对低
3.Spring Boot 可以创建独立运行的应用,不需要依赖于容器
4.提供maven极简配置,以及可视化的相关监控功能,比如性能监控,应用的健康程度等
5.为微服务 Spring Cloud 奠定了基础,使得微服务的构建变得简单
6.Spring Boot 可以整合很多各式各样的框架,并能很好的集成
如下引用,当我们想开发一个web项目时,用Spring时我们需要添加多个依赖。但是Spring Boot会帮助我们快速启动一个web容器,而我们只需要在pom.xml添加一个 starter-web依赖即可。
1.4 其他org.springframework.boot spring-boot-starter-web
- Spring Boot 内置了tomcat,我们在部署项目的时候,不用在服务器上另外部署Tomcat。直接打包成jar包,使用 java -jar xxx.jar一键式启动项目。
- 降低运行环境的基本要求,环境变量中有JDK即可。
- 注解的引用更加便捷、清晰、简单。
- 缺点是集成度较高,使用过程中不太容易了解底层。
- 建议:在学习时,多针对实现原理及与Spring原有的区别上学习。
- 开发工具:IntelliJIDEA 2018.2
- JDK版本: 1.8
- Maven版本:3.0及以上版本(我使用的是IntelliJIDEA 2018.2内置版本)
- Spring Boot版本:2.5.6
- 位置:File->Project Structure,选择SDKs
- 在 JDK home path 中选择本地 jdk 的安装目录
- Name:我们给jdk取的名字
如下图配置完成后Apply - OK 保存配置信息:
2.3 创建项目- 位置:File->New->Project 选择Spring Initializr
- Product SDK 中选择对应的JDK,点Next进入项目配置信息
配置信息注解:
1.Group 企业域名,我这里是个人项目,名字起的是com.yuang
2.Artifact 项目名称,自定义的
3.Type 咱们选Maven Project
4.Language 当然是java 默认的编程语言
5.Java Version 选择8 对应JDK版本
6.Version 项目的版本,用于版本管理
7.Description 项目的描述 (配置好以上内容后,点击Next)
8.Dependencies 项目中所需要的依赖信息,根据实际情况来添加,我这里引用的是web(Spring Web)及sql(MyBatis)相关的依赖 (配置好以上内容后,点击Next)
9.Project Name 与 Project Location 重命名项目名称及工作空间的路径
10.相关界面信息如图:
- 位置:File->settings,搜索 maven
如图:
这里我选择的是IntelliJIDEA 2018.2内置版本,也可以自己下载喜欢的版本,配置路径选择对应的本地安装路径即可。
- 位置:File->settings,搜索 encoding 设置为UTF-8
- src/main/java路径:主要编写业务程序
- src/main/resources路径:存放静态文件和配置文件
- src/test/java路径:主要编写测试程序
- Spring Boot 项目创建后都会生成一个启动类(启动时只要运行该类的 main 方法即可,启动类内右键选择run/debug '{ProjectName}Application ’ ,{ProjectName}:是项目名,我们自定义的那个名字),代码如下:
package com.yuang.ironart;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class IronartApplication {
public static void main(String[] args) {
SpringApplication.run(IronartApplication.class, args);
}
}
运行main方法:
- 创建个HelloController.java 文件,输入以下代码,并重启项目。
- 我们在浏览器中输入地址localhost:8080/hello,就可以看到 hello spring boot!!!打印了
package com.yuang.ironart;
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!!!!";
}
}
4 报错整理
error: Failed to configure a DataSource: ‘url’ attribute is not specified and no embedded datasource could be configured.
翻译:配置DataSource失败:未指定’url’属性,也无法配置嵌入数据源
- A1: application.properties 配置问题,因为我在创建项目的时候引入了Mybatis,没有配置datasource的一些相关属性,例如:地址值,数据库驱动,用户名,密码等。
#Spring Boot 使用一个全局的配置文件 application.properties 或 application.yml,放置在【src/main/resources】目录或者类路径的 /config 下
#可以在类中使用@Value(value="${config.name}") 来获取配置的值 config.name:是配置参数
#访问根路径
server.servlet.context-path=/
#应用名称
spring.application.name=springboot-demo
#访问端口号
server.port=8080
#编码格式
server.tomcat.uri-encoding=utf-8
#数据库相关配置 这里需要配置Driver.java类 本节未用到默认生成一份即可
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/sql_test
spring.datasource.username=root
spring.datasource.password=123456
spring.datasource.max-idle=10
spring.datasource.max-wait=10000
spring.datasource.min-idle=5
spring.datasource.initial-size=5
#session生命周期
server.servlet.session.timeout=30m
- A2: 在启动类头部加上: @SpringBootApplication(exclude= {DataSourceAutoConfiguration.class})
exclude: 排除此类的AutoConfig,即禁止 SpringBoot 自动注入数据源配置。



