07-SpringBoot引入外部配置信息

1、通过@Value("${属性名}")注解获取属性值

@Value注解可以获取properties/yml文件中定义的属性内容

例,在application.yml文件中定义一个filePath属性

然后通过@Value注入属性值

发现可以将注入的filePath的值获取


 

2、application.yml/application.properties中有统一前缀配置信息引入

使用注解::@ConfigurationProperties(prefix = "统一前缀")

当然也可以通过@Value注解获取,但是得每个属性都得注入,有大量配置信息就显得特别麻烦

有统一前缀的配置信息,可以通过以下方式获取。

例,在application.yml文件中定义一个有统一前缀的student属性

然后写一个配置类,在类上加入@ConfigurationProperties(prefix = "统一前缀")注解,注意属性要一一对应,如图

@ConfigurationProperties(prefix = "student")
@Component  // 注入到Spring容器中
@Data   // lombok提供getter、setter方法
public class StudentProperties {

    private String name;
    private Integer age;
    private Double score;
    private String sex;
}

这样,就可以直接使用有统一前缀的配置信息了

当然,引入@ConfigurationProperties注解后,会发现在其所在当前配置类上方飘红,不过不影响使用

如果有强迫症,也可在pom.xml文件中引入下面的依赖,飘红就没了

<!--@ConfigurationProperties注解飘红去除-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-configuration-processor</artifactId>
</dependency>

 

3、非application.yml/application.properties中有统一前缀配置信息引入

使用组合注解:@ConfigurationProperties(prefix = "统一前缀")、@PropertySource("声明文件位置")

然后写一个配置类,在类上加入@PropertySource("声明文件位置")、@ConfigurationProperties(prefix = "统一前缀")注解,注意声明文件位置、属性要一一对应,如图

测试

如果您想在Spring Boot应用程序中使用外部Tomcat服务器,可以通过以下步骤进行操作: 1. 在pom.xml文件中排除内嵌Tomcat依赖: ``` <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <exclusions> <exclusion> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> </exclusion> </exclusions> </dependency> ``` 2. 添加对Tomcat的依赖: ``` <dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-core</artifactId> <version>9.0.0.M26</version> </dependency> <dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-jasper</artifactId> <version>9.0.0.M26</version> </dependency> <dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-el</artifactId> <version>9.0.0.M26</version> </dependency> ``` 3. 在应用程序中创建一个类,继承自SpringBootServletInitializer,并重写configure()方法: ``` public class MyApplication extends SpringBootServletInitializer { @Override protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) { return builder.sources(Application.class); } } ``` 4. 在应用程序的配置文件中,将内嵌Tomcat的端口设置为0,以禁用内嵌Tomcat服务器: ``` server.port=0 ``` 5. 将应用程序打包为WAR文件,将WAR文件复制到外部Tomcat服务器的webapps目录下,并启动Tomcat服务器即可。 注意:在使用外部Tomcat服务器时,需要注意一些细节,例如:端口号、访问路径等。如果您需要使用HTTPS协议,还需要在外部Tomcat服务器上配置SSL证书。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值