SpringBoot中PropertySource注解的使用以及PropertySource注解的属性

时间:2025-02-13 15:31:51

这段时间在做项目时遇到端口号要写在配置文件中的问题,通过度娘了解了一下,在这里简要写一下自己的体会,希望对大家有所帮助
1.作用
用来加载指定的配置文件和外部文件
2.属性
PropertySource有以下几个属性
为要加载的文件,可以是多个当以classpath开头时,程序会自动到classpath中读取,当以file开头时,会加载外部的文件
是表示要加载文件的名称,这里要加载的配置文件必须是 唯一的不能是多个
,设置编码,我们一般用utf-8
,这个属性的意思是当加载的配置文件不存在时,是否报错默认false,当为true时表示文件不存在不报错,为false时表示文件不存在报错

@PropertySource(value= {"classpath:","file:config/"},encoding="UTF-8",ignoreResourceNotFound=true)

3.使用
@PropertySource要和@Value配合使用,@Value注解的属性为配置文件的键,对应下面的属性
配置文件

=10023

实体类

@Value("${}")
	private String port;

4.实例
配置文件

=10023
=1

实体类(这里说明一下实体类好像这能定义成String类型,我定义成int会报错)

package ;

import ;
import ;
import ;

@Component
@PropertySource(value= {"classpath:","file:config/"},encoding="UTF-8",ignoreResourceNotFound=true)
public class CinterfaceConfig {
	@Value("${}")
	private String port;
	@Value("${}")
	private String LSCID;
	public String getPort() {
		return port;
	}
	public void setPort(String port) {
		 = port;
	}
	public String getLSCID() {
		return LSCID;
	}
	public void setLSCID(String lSCID) {
		LSCID = lSCID;
	}
}

如有错误或不恰当处欢迎指出