spring boot--@Value注解失效
接手一个任务开发预警邮件需求,计划将邮件信息(hostName,用户名,密码,发送方,接受方等)设置为可配置变量,配置在配置中心,使用@Value注解获取配置,如下:
@Value("${warning.email.hostName}")
private String hostName;
@Value("#{'${warning.email.receivers}'.split(',')}")
private List<String> receivers;
@Value("${warning.email.userName}")
private String userName;
@Value("${warning.email.passWord}")
private String passWord;
@Value("${warning.email.sendFrom}")
private String sendFrom;
以上为正确配置方式,发生错误的情况是将这些变量全部声明为了静态变量,导致取值全部为空:
@Value("${warning.email.hostName}")
private static String hostName;
上网查询了下使用@Value的注意事项:
1.不能作用于静态变量(static);
2.不能作用于常量(final);
3.不能在非注册的类中使用(类需要被注册在spring上下文中,如用@Service,@RestController,@Component等);
4.使用这个类时,只能通过依赖注入的方式,用new的方式是不会自动注入这些配置的。
spring boot--@Value注解失效的更多相关文章
- Spring Boot常用注解总结
Spring Boot常用注解总结 @RestController和@RequestMapping注解 @RestController注解,它继承自@Controller注解.4.0之前的版本,Spr ...
- Spring Boot 常用注解汇总
一.启动注解 @SpringBootApplication @Target(ElementType.TYPE) @Retention(RetentionPolicy.RUNTIME) @Documen ...
- 3个Spring Boot核心注解,你知道几个?
Spring Boot 核心注解讲解 Spring Boot 最大的特点是无需 XML 配置文件,能自动扫描包路径装载并注入对象,并能做到根据 classpath 下的 jar 包自动配置. 所以 S ...
- Spring Boot@Component注解下的类无法@Autowired的问题
title: Spring Boot@Component注解下的类无法@Autowired的问题 date: 2019-06-26 08:30:03 categories: Spring Boot t ...
- Spring boot 基于注解方式配置datasource
Spring boot 基于注解方式配置datasource 编辑 Xml配置 我们先来回顾下,使用xml配置数据源. 步骤: 先加载数据库相关配置文件; 配置数据源; 配置sqlSessionF ...
- 【SpringBoot】15. Spring Boot核心注解
Spring Boot核心注解 1 @SpringBootApplication 代表是Spring Boot启动的类 2 @SpringBootConfiguration 通过bean对象来获取配置 ...
- spring boot纯注解开发模板
简介 spring boot纯注解开发模板 创建项目 pom.xml导入所需依赖 点击查看源码 <dependencies> <dependency> <groupId& ...
- Spring Boot中注解@ConfigurationProperties
在Spring Boot中注解@ConfigurationProperties有三种使用场景,而通常情况下我们使用的最多的只是其中的一种场景.本篇文章带大家了解一下三种场景的使用情况. 场景一 使用@ ...
- 解放生产力:Spring Boot的注解校验
关于对象入参的校验,我们可能第一个想到的就是在Controller层或者Service层增加很多if else的判断,如: if (user.getPassword() == "" ...
- Spring Boot MyBatis注解:@MapperScan和@Mapper
最近参与公司的新项目架构搭建,在使用mybatis的注解时,和同时有了不同意见,同事认为使用@Mapper注解简单明了,而我建议使用@MapperScan,直接将mapper所在的目录扫描进去就行,而 ...
随机推荐
- [简单] 树上的dfs & bfs_洛谷P5908 猫猫和企鹅
题目链接https://www.luogu.com.cn/problem/P5908 题目大意: \[\begin{align*} & 给定n个点构成一颗树 每条边val=1\\ & ...
- 如何利用HMMER鉴定基因家族成员
通常我们用的都是通过blast比对来确定我们需要的家族成员,首先是比对序列,再次是需要目标物种的蛋白序列,来进行比对,通常比对的时候我们都需要设定e-value值.今天我们来学习一下利用HMMER来鉴 ...
- 9组-Beta冲刺-总结
一.基本情况 组长博客链接:9组-Beta冲刺-总结 现场答辩总结:本次答辩,我们演示了我们到Beta冲刺周结束时的成果展示,离目标还有一些距离,不过本次答辩完成了任务,总体来说还不错,希望下次最终答 ...
- quartz监控日志(三)查看卡死线程堆栈
转
我们经常碰到一些定时任务卡死或者执行时间很长,这样的问题我们排查手段比较常用的是jstack命令 来查看线程堆栈,然后根据我们监控中的threadId或者threadName来查找线程详细堆栈看卡在哪 ...
- 麒麟系统ARM架构下MySQL5.7离线安装,搭建主从集群
一.检查本机操作系统 #一定要注意查看本机的操作系统,是amd(x86)还是arm(aarch)架构 $ uname -a Linux Server-58aa6d9e-9412-4ab6-b496-2 ...
- JavaScript设计模式样例六 —— 抽象工厂模式
抽象工厂模式(Abstract Factory Pattern) 定义:抽象工厂模式提供了一种方式,可以将一组具有同一主题的单独的工厂封装起来.或者说,是其他工厂的工厂.目的:提供一个创建一系列相关或 ...
- 平衡搜索树-AVL树 图文详解 (万字长文)
目录 AVL树 AVL树的概念 AVL树节点的定义: AVL树的插入 基本情况分析 平衡因子对应的操作 旋转操作 分析需要旋转的情况 结论 4种旋转操方法与特征 6种双旋平衡因子特征 代码实现 四种旋 ...
- 【Python + Appium】之元素定位总结(更新)
一.ID定位 uiautomatorviewer里面的:resource-id driver.find_element(By.ID,"com.csks.businesses:id/tv_nu ...
- Spring框架之IOC介绍
Spring之IOC 简介 首先,官网中有这样一句话:Spring Framework implementation of the Inversion of Control (IoC) princip ...
- RabbitMQ脑裂处理
脑裂现象: Network partition detectedMnesia reports that this RabbitMQ cluster has experienced a network ...