spring @value和@@PropertySource注解简单使用
Posted yangxiaohui227
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了spring @value和@@PropertySource注解简单使用相关的知识,希望对你有一定的参考价值。
@Value注解:可以使用注入基本字符串 EL表达式,从配置文件读取数据
@PropertySource用于引入单个配置文件
@PropertySources用于引入多个配置文件
@PropertySource或者@PropertySources引入的数据都是存在环境变量ConfigurableEnvironment中的
在resouces文件夹下新建一个cat.properties文件,写入内容parent=tiger
public class Cat { @Value("猫") //直接注入字符串 private String name; @Value("#{12+2}") //支持EL表达式 private int age; @Value("${parent}") //支持配置文件读取 private String parent; public Cat() { System.out.println("猫被初始化"); } @Override public String toString() { return "Cat{" + "name=\'" + name + \'\\\'\' + ", age=" + age + ", parent=\'" + parent + \'\\\'\' + \'}\'; } }
@Import({Cat.class}) @PropertySources({@PropertySource(value ="cat.properties")}) public class Appconfig { }
public class Demo { public static void main(String[] args) { AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(Appconfig.class); Cat bean = context.getBean(Cat.class); System.out.println(bean); //Cat{name=\'猫\', age=14, parent=\'tiger\'} ConfigurableEnvironment environment = context.getEnvironment(); System.out.println(environment.getProperty("parent")); //tiger } }
以上是关于spring @value和@@PropertySource注解简单使用的主要内容,如果未能解决你的问题,请参考以下文章
为 QML ListView 实现 QAbstractListModel 子类?
如何创建依赖于 Spring Bean 的自定义 Spring PropertySource
有两个表A 和B ,均有key 和value 两个字段,如果B 的key 在A 中也有,就把B 的value 换为A 中对应的value