问题:
application.yml
spring:
mail:
host: smtp.qq.com
port: 587
username: [email protected]
password: xxxxxxxxx
default-encoding: UTF-8
如下图所示,做发送邮件工具类时,想读取application.yml中的发送人邮箱并注入到userName中,结果一直报 null, 注入失败…
分析:
使用 @Value() 注意事项:
-
不能作用于静态变量(static)
-
不能作用于常量(final)
-
不能在非spring容器管理的类中使用(类需要被纳入进spring容器管理,如用
@Service, @RestController, @Component
等)
-
使用这个类时,只能通过依赖注入的方式,用new实例对象的方式是不会自动注入这些配置的