SpringBoot【配置文件】(上)

简介: SpringBoot【配置文件】(上)

🍎一.配置文件


Spring的 生态系统我们了解即可之后的学习我们都会遇到


a1cc074e9b984bea842e28f2d915bc29.png

🍒1.1 配置文件作用


整个项⽬中所有重要的数据都是在配置⽂件中配置的,⽐如:


●数据库的连接信息(包含⽤户名和密码的设置)

●项⽬的启动端⼝

●第三⽅系统的调⽤秘钥等信息

●⽤于发现和定位问题的普通⽇志和异常⽇志等


想象⼀下如果没有配置信息,那么 Spring Boot 项⽬就不能连接和操作数据库,甚⾄是不能保存可以⽤于排查问题的关键⽇志,所以配置⽂件的作⽤是⾮常重要的


🍒1.2 配置⽂件的格式


Spring Boot 配置⽂件主要分为以下两种格式:


● properties(老版)

● yml(新版 类似于json格式)


6dfa10dd766f40529260d823735ec2fb.png


这就好像连锁店⾥⾯的统⼀服装⼀样,有两种不同的款式,properties 类型的配置⽂件就属于⽼款“服饰”,也是创建 Spring Boot 项⽬时默认的⽂件格式(主要是由于仓库⾥还有库存),而 yml 属于新版款式,如果⽤户了解情况直接指定要新款服饰,那么就直接发给他


理论上讲 properties 可以和 yml ⼀起存在于⼀个项⽬当中,当 properties 和 yml ⼀起存在⼀个项⽬中时,如果配置⽂件中出现了同样的配置,⽐如 properties 和 yml 中都配置了“server.port”,那么这个时候会以 properties 中的配置为主,也就是 .properties 配置⽂件的优先级最⾼,但加载完 .properties ⽂件之后,也会加载 .yml ⽂件的配置信息


虽然理论上来讲 .properties 可以和 .yml 共存,但实际的业务当中,我们通常会采取⼀种统⼀的配置⽂件格式,这样可以更好的维护(降低故障率)。这就好像连锁店的服饰⼀样,不管是⽼款的服装还是新款的服装,⼀定要统⼀了才好看特殊说明


🍎二.properties 配置文件


properties 配置⽂件是最早期的配置⽂件格式,也是创建 Spring Boot 项⽬默认的配置⽂件


🍒2.1 properties 基本语法


properties 是以键值的形式配置的,key 和 value 之间是以“=”连接的,如在我们设置端口号和数据库连接端口时:

7c099b32e0774a07b33512cfc49988e3.png

配置⽂件中使⽤“#”来添加注释信息


🍒2.2 properties快捷生成插件(spring tools)


大家记得下载后进行重启


58e8656a4f494439b945c1c6c5c630df.png


🍒2.3 读取properties 配置文件


如果在项⽬中,想要主动的读取配置⽂件中的内容,可以使⽤ @Value 注解来实现。@Value 注解使⽤“${}”的格式读取,如下代码所示:

@Controller
public class UserController {
    @Value("${server.port}")
    private Integer port;
    @ResponseBody  //返回一个非静态页面的数据
    @RequestMapping("/sayhi") //设置路由url/第一路径
    public String sayHi(){
        return "hello:" + port;
    }
}

image.pngimage.png



🍒2.4 解决properties的乱码问题


解决properties的乱码问题



f309a580ffe6439f9f87068fe7984f44.png


配置项目中中文乱码的问题


image.png

e39a01b700dc42c19046ddab3d574473.png


因为.properties文件是在我们设置之前就已经创建了的,所有我们需要将之前创建好的.properties文件删除重新进行创建才能解决中午乱码创建问题


🍒2.5 properties 缺点分析


properties 配置是以 key-value 的形式配置的,如下代码所示:

spring.datasource.url=jdbc:mysql://localhost:3306/test?characterEncoding=UTF8&autoReconnect=true&useSSL=false
spring.datasource.name=root
spring.datasource.password=jj1432644716


从上述配置key看出,properties 配置⽂件中会有很多的冗余的信息,⽐如这些:

50a3012d41304551a3f0be78dc18e941.png


想要解决这个问题,就可以使⽤ yml 配置⽂件的格式化了

相关文章
|
5月前
|
Java 数据挖掘 数据库连接
SpringBoot基本配置详解
SpringBoot基本配置详解
|
5月前
|
Java
SpringBoot基础配置文件
SpringBoot基础配置文件
|
6月前
|
Java 测试技术 Spring
SpringBoot 配置文件
SpringBoot 配置文件
|
6月前
|
Java 测试技术 数据库连接
SpringBoot 及 配置文件
SpringBoot 及 配置文件
|
6月前
|
Java 数据库 Spring
|
6月前
|
JSON Java Go
|
存储 机器学习/深度学习 Java
SpringBoot的配置文件(下)
SpringBoot的配置文件(下)
|
XML JavaScript Java
SpringBoot的配置文件(上)
SpringBoot的配置文件(上)
|
JSON JavaScript Java
SpringBoot【配置文件】(下)
SpringBoot【配置文件】(下)
SpringBoot【配置文件】(下)
|
Java 应用服务中间件 Spring
解析SpringBoot-配置文件
这篇文章主要为大家全面的解析SpringBoot-配置文件,文中附含详细的图文示例代码,以便同学们能更好的理解,有需要的同学可以借鉴参考下