说明:
(1)本篇博客的内容:介绍了【如何在配置文件中自定义属性】和【如何在代码中,利用@Value注解,去获取属性值,以赋值给变量】;
(2)说明两点:在工作中,@Value注解确实大量的使用,很方便;但也能感受到阅读Spring源码的重要性,万一以后遇到需要自建框架的情况时,也能比较好的参考Spring的设计思路,从而上手;
目录
2.为了演示,创建PropertiesController类;
二: 【配置自定义属性】和【使用@Value注解,去获取】;
1.把信息写在配置文件中;然后,在代码中可以利用@Value注解去获取;(非静态变量)
2.把信息写在配置文件中;然后,在代码中可以利用@Value注解去获取;(静态变量)
一:前置说明;
1.事先说明;
(1)以前我们也说过,为了提高程序的扩展性和维护性,对于一些信息,我们不应该把其写死在代码中,而是写在配置文件中;
(2)在Spring Boot项目中,我们自然也可以把一些信息写在配置文件中;
(3)由此,就引出了配置自定义属性的内容;
(4)关于自定义属性,我们需要使用@Value注解;第一次遇到@Value注解是在【Spring IoC容器与Bean管理24:使用注解方式实现Spring IoC五:元数据注解;(@Primary,@PostConstruct,@PreDestroy,@Scope,@Value)】,如有需要可以去参考这篇博客;
2.为了演示,创建PropertiesController类;
3.原先的旧方式:把信息写死在了代码中;(这种方式很不好)
二: 【配置自定义属性】和【使用@Value注解,去获取】;
1.把信息写在配置文件中;然后,在代码中可以利用@Value注解去获取;(非静态变量)
启动项目,观察效果:结果OK;
能够感受到,这儿和前面在Spring MVC中使用@Value注解时相比,又简单了些;;;;之所以这么简单,Spring Boot在背后做了很多的支撑工作;也感受到了Spring源码的重要性;
2.把信息写在配置文件中;然后,在代码中可以利用@Value注解去获取;(静态变量)
(1)问题:可以看到,对于static属性,其读取不出来;
(2)解决办法:对于静态属性,添加一个非静态的setter方法,并在该setter方法上使用@Value注解: