SpringBoot @Value 注解使用
当我想读取 application.yml/application.properties
配置文件的参数值时,接触到了@Value
注解。
部分知识参考:https://blog.csdn.net/woheniccc/article/details/79804600
1、作用
@Value
注解的作用就是将 application.yml/application.properties
配置文件的参数值读取出来,赋值标注了该注解的参数。
有@Value("${}")
和@Value("#{}")
两种方式。
配置文件
我的配置文件使用的是application.properties
,截图如下:
2、两种方式
2.1、@Value("${}")
Controller
如下:
输出结果如下:
@Value("${}")
的使用方式是比较简单和普遍的,一般情况下使用它。
2.2、@Value("#{}")
@Value("#{}")
表示SpEL表达式通常用来获取bean
的属性,或者调用bean
的某个方法。当然还有可以表示常量
关于SpEL参考:http://www.zhyea.com/2019/11/27/springboot-base-04-use-spel.html
首先,我们需要创建一个bean
,为某一字段添加@Value("${}")
注解,并为字段添加 get()
和set()
方法。
User
的model
如下:
User
实体类在spring
容器中默认注册为user
, controller如下:
输出结果如下同上,故不多贴图。
3、注意点
在使用@Value
注解时,需要在对应的class
实体类上添加 @Component 注解,把实体类装配进容器才能正常使用。
上文在使用到user
实体类或controller
需要添加@Component
注解或@Controller
注解。