目的:使用@Value、@PropertySource读出配置文件中的属性值,对Bean属性进行实例化。
@PropertySource:导入外部资源文件
@Value:属性注入,存在两种形式。
(1)第一种方式@Value("${}"):在使用Springboot项目搭建的项目时,配置文件application.properties中的内容已经被加载到了项目中,在项目中可以通过该注解获取配置文件中的信息
(2)第二种方式@Value("#{}"):两种的注解区别在值上的区别为:
@Value的值有两类:
① ${ property : default_value }
② #{ obj.property? :default_value }
第一个注入的是外部配置文件对应的property,第二个则是SpEL表达式对应的内容。 那个default_value,就是前面的值为空时的默认值。注意二者的不同,#{}里面那个obj代表对象。
就是说,在使用该注解的时候,书写上根据对象.属性来获取值,而@Value("${}")是直接根据配置文件中的属性获取信息。
参考博客: