其他分享
首页 > 其他分享> > spingboot学习(二)

spingboot学习(二)

作者:互联网

1.使用Spring Initializer快速创建Spring Boot项目
IDE都支持使用Spring的项目创建向导快速创建一个Spring Boot项目;

选择我们需要的模块;向导会联网创建Spring Boot项目;

默认生成的Spring Boot项目;

二、配置文件

1、配置文件

SpringBoot使用一个全局的配置文件,配置文件名是固定的;

•application.properties
•application.yml

配置文件的作用:修改SpringBoot自动配置的默认值;SpringBoot在底层都给我们自动配置好;

2、YAML语法:
1、基本语法
k:(空格)v:表示一对键值对(空格必须有);(空格很重要 )
以空格的缩进来控制层级关系;只要是左对齐的一列数据,都是同一个层级的

server:
    port: 8081
    path: /hello

属性和值也是大小写敏感;
2.yaml写法
①第一种写法:(类似k:v键值对形式)
字符串默认不用加上单引号或者双引号;(解释:类似于上面的yaml代码写法)
双引号和单引号在yaml中的区别:
在这里插入图片描述
在这里插入图片描述
②第二种写法:类似(对象:map(键值对))
在这里插入图片描述

还可以这样来写:(行内写法)
在这里插入图片描述
接下来说一下@ConfigurationProperties这个注解的使用(默认从springboot的全局配置文件application.properties文件中读取值)
在这里插入图片描述
在这里插入图片描述
上面的关于person的属性全都写在application.properties中,但是如果我们不写在application.properties中,而是新建应该person.properties,那么应该怎么注入到Class Person类上呢?
解答:这个时候可以使用@PropertySource:加载指定的配置文件;person.properties是我们自己新建的
在这里插入图片描述
在这里插入图片描述

接下来再说应该注解@ImportResource
@ImportResource:导入Spring的配置文件,让配置文件里面的内容生效;
Spring Boot里面没有Spring的配置文件,我们自己编写的配置文件,也不能自动识别;
想让Spring的配置文件生效,加载进来;@ImportResource标注在一个配置类上

在这里插入图片描述

以上这些都用到了配置文件,但是spring boot说好的实现无配置文件,完全注解化的呢?看下文就知道了
我们编写一个配置类(在类上加@Configuration)
在这里插入图片描述
如果我们非要使用配置文件也可以,我们可以在配置文件中使用配置文件占位符
4、配置文件占位符
1、随机数
在这里插入图片描述
2、占位符获取之前配置的值,如果没有可以是用:指定默认值
在这里插入图片描述
接下来我们看一下springboot的配置文件的加载位置顺序
在这里插入图片描述
springboot的还可以加载外部的配置文件:具体信息看下面
在这里插入图片描述
解析:这里对常用的上图中标红的5中方法做解析
首先看命令行参数法;
所有的配置都可以在命令行上进行指定
java -jar spring-boot-02-config-02-0.0.1-SNAPSHOT.jar --server.port=8087 --server.context-path=/abc
多个配置用空格分开; --配置项=值
然后再看第6-9条方式,什么是jar包外部和内部?见下图
在这里插入图片描述

标签:spingboot,配置文件,Spring,配置,Boot,学习,application,properties
来源: https://blog.51cto.com/JavaAlliance/2934159