文章目录
尚硅谷:8 - 9 - 10 14-15-16
黑马:6-11
尚硅谷:日志
一、SpringBoot配置文件
application.yml
和 pom.xml
是两种不同类型的配置文件,它们在 Java 项目中扮演着各自独特的角色。
application.yml
:
用途:application.yml 是 Spring Boot 应用中用于配置应用参数的文件。它采用 YAML(YAML Ain’t Markup Language)格式,提供了一种简洁且易于阅读的方式来配置应用的行为,如数据库连接、服务器端口、自定义变量等。
pom.xml
用途:pom.xml 是 Maven 项目的核心配置文件,用于管理项目的构建、报告和文档的详尽信息。它定义了项目的结构、依赖关系、插件、目标和其他配置。
1.1 application.properties配置文件
application.properties
配置文件在项目/src/main/resources/application.properties
路径下:
application.properties核心配置项
常用配置:
server.port=9090 <!--用于修改端口号-->
server.servlet.context-path=/start <!--用于修改虚拟路径:localhost:9090/start/hello-->
1.1 application.yml(yaml)配置文件
与application.properties
的区别是格式不同,两者同时出现时,优先使用application.properties
中的设置。实际开发更常用,因为更清楚直观,关注数据
server:
port:9191
servlet:
context-path:/start2
1.1.1 yml文件的书写和获取
书写注意:
- 值前边必须有空格,作为分隔符
- 使用空格作为缩进表示层级关系,相同的层级左侧对齐
#
号作为yml
和properties
的注释- - 是指数组项
- 自己配置的名字可以自己定~
获取配置:
需要 setter 方法来绑定属性,才能成功。
①添加@Value("${键名}")
注解
注解到类的成员变量上就可以使用了。并且更改yml
并不需要重新编译java
。
②添加@ConfigurationProperties(prefix="前缀")
注解
注意变量名一定就是你配置文件中的键名!
正确绑定:
@RestController
@ConfigurationProperties(prefix = "email")
public class HelloController {
public String user;
/*public String getUser() {
return user;
}*/
public void setUser(String user) {
this.user = user;
}
@GetMapping("/haha")
public String hello() {;return "~"+user+"~";}
}
错误绑定:
@RestController
@ConfigurationProperties(prefix = "email")
public class HelloController {
public String user;
@GetMapping("/haha")
public String hello() {;return "~"+user+"~";}//输出~null~
}
二、SpingBoot常用注解
SpringBoot摒弃XML配置方式,改为全注解驱动
1 Bean
1.1 Bean扫描:@ComponentScan
默认情况下,SpringBoot会扫描启动类所在的包,原因是@SpringBootApplication
是一个组合包,它包含了@ComponentScan
。不过可以通过@ComponentScan(basePackages = "包名")
,来扫描你指定的报名,如下所示。