第一天【springboot入门】
创建springboot步骤
1.新建springboot项目
2.关于pom.xml
(1)spring-boot-dependencies:核心依赖在父工程中!
(2)我们在写或者引入一些springboot依赖的时候,不需要指定版本,就因为有这些版本仓库
(3)springboot启动器
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
*启动器说白了就是springboot的启动场景 *比如spring-boot-starter-web,他就会帮我们自动导入web环境左右的依赖 *springboot会将所有的功能场景,都变成一个个的启动器 *我们要使用什么功能,就需要找到对应的启动器就可以了"starter"
3.@SpringBootApplication注解
该注解标注这个类是一个springboot的应用:启动类下的所有资源被导入
第二天【springboot的yaml配置文件】
SpringBoot:配置文件及自动配置原理
1.配置文件 SpringBoot使用一个全局的配置文件,配置文件名称是固定的 > * application.properties
语法结构:key=value
application.yml
语法结构:key:空格 value
2.YAML配置文件 *YAML语法
基础语法:k:(空格)v
以此来表示一堆键值对(空格不能省略);以空格的缩进来控制层关系,只要是左边对其的一列数据都是同一层级的。
注意:属性和值的大小写都十分敏感。例子:
server:
port: 8080
Path: hello *值的写法
字面量:普通的值【数字,布尔值,字符串】对象、Map(键值对) 语法1:k: v1: v2: 语法2:student: {name: zs,age: 3} 数组(List、set)有两种写法 语法1:用 - 值表示数组中的一个元素,比如 pets: - cat - dog - pig 语法2:行内写法 pets: [cat,dog,pig] *修改springboot的默认端口 server: port: xxxx
YAML内置还有其他很多配置文件的属性值,可以百度查
3.针对在YAML中配置的对象的使用步骤 (1)在YAML中配置对象的属性值 (2)使用@Component注解注入Person对象 (3)同时使用@ConfigurationProperties(prefix =
“person”)在Person类中配置来指定yaml中的person对象 (4)在测试类中声明person类进行测试
4.使用@ConfigurationProperties和@Value之间的对比
@ConfigurationProperties @Value
功能 批量注入配置文件中的属性 一个个指定
松散绑定 支持 不支持
SPEL 不支持 支持
JSR303数据校验 支持 不支持
复杂类型封装 支持 不支持
总结:
(1)@ConfigurationProperties需要写一次即可,value则需要每个字段都添加
(2)松散绑定:这个什么意思呢?比如我的yml中写的last-name,这个和lastName是一样的,
(3)后面跟着的字母默认是大写的,这就是松散绑定
(4)JSR303数据校验,这个就是我们可以在字段上增加一层过滤器,可以保证数据的合法性
(5)复杂类型封装,yml中可以封装对象,使用@Value就不支持
结论:
配置yml和配置properties都可以获取到值,强烈推荐yml
如果我们在某个业务中,只需要获取配置文件中的某个值,可以使用一下@Value
如果说,我们专门编写了一个JavaBean来和配置文件进行映射,就直接使用@ConfigurationProperties,不要犹豫
第三天【springboot多环境配置、修改端口号、yml配置文件】
多环境配置
日常开发中,分为不同的环境配置文件,简单的可分为开发环境和上线环境,需要区分配置环境
test—本地开发环境
sit—测试环境
prc—预生产环境
prd—生产环境
1.我们可以新建3个properties,分别对应不同的环境
主配置文件application.properties不变,其中可以使用spring.profiles.active=选择哪个环境
如spring.profiles.active=sit,表示加载application-sit.properties
spring.profiles.active=sit
修改端口号
端口号默认是8080,可以修改
# 端口号默认是8080,可以修改成其他
server.port=8888
# 添加项目名进行访问
server.context-path=/springboot_Helloworld
yml使用
springboot可以使用另一种配置方式,使用yml
创建application.yml,冒号后面一定要加空格,注意规范
server:
port: 8080
context-path: /hello_world_project
spring:
datasource:
driver-class-name: com.mysql.jdbc.Driver # mysql驱动包
url: jdbc:mysql://localhost:3306/test # 数据库名称
username: root
password: