转自:https://blog.csdn.net/evilcry2012/article/details/84614137
在这篇文章中,我们会利用Spring的@PropertySource和@Value两个注解从配置文件properties中读取值。先来段java代码
@Component
@PropertySource(value = {"classpath:common.properties", "classpath:abc.properties"})
public class Configs {
@Value("${connect.api.apiKeyId}")
public String apiKeyId;
@Value("${connect.api.secretApiKey}")
public String secretApiKey;
public String getApiKeyId() {
return apiKeyId;
}
public String getSecretApiKey() {
return secretApiKey;
}
}
我们来具体分析下:
1、@Component注解说明这是一个普通的bean,在Component Scanning时会被扫描到并被注入到Bean容器中;我们可以在其它引用此类的地方进行自动装配。@Autowired这个注解表示对这个bean进行自动装配。 比如:
@Controller
public class HomeController {
@Autowired
private Configs configs;
}
2、@PropertySource注解用来指定要读取的配置文件的路径从而读取这些配置文件,可以同时指定多个配置文件;
3、@Value("${connect.api.apiKeyId}")用来读取属性key=connect.api.apiKeyId所对应的值并把值赋值给属性apiKeyId;
4、通过提供的get方法来获取属性值,如
@Controller
public class HomeController {
@Autowired
private Configs configs;
private void decrytCardInfo(AtomRequest req) throws Exception {
String a = configs.getApiKeyId();
}
}