5、@Value是如何工作的
答:和@Autowired、@Resource也是对属性进行依赖注入的,只不过@Value是用来从Properties文件中来获取值的,并且
@Value可以解析SpEL(Spring表达式)
@Value("周瑜")
直接将字符串“周瑜”赋值给属性,如果属性基础类型不是String,或无法进行类型转化,则报错
@Value("${周瑜}")
将会把${}中的字符串当做key,从Properties文件中找到对应的value赋值给属性,如果没找到,
则会把“${周瑜}”当成普通字符串注入给属性。
@Value("#{周瑜}")
将会把#{}中的字符串当做Spring表达式进行解析,Spring会将周瑜当做beanName,在Spring
容器中找到对应的beran,如果找到就进行属性注入,没找到报错。