SpringBoot设置@Value注解获取不到值

1.使用static或final修饰了tagValue,如下:

private static String tagValue; //错误
private final String tagValue; //错误

2.类没有加上@Component(或者@service等)

@Component //遗漏
class TestValue{
	@Value("${tag}")
	private String tagValue;
}

3.类被new新建了实例,而没有使用@Autowired

@Component
class TestValue{
	@Value("${tag}")
	private String tagValue;
}

class Test{
	...
	TestValue testValue = new TestValue()
}

正确方式: 上面这个testValue中肯定是取不到值的,必须使用@Autowired:

class Test{
	@AutoWired
	TestValue testValue;
	public void aa(){
		testValue.test();
	}
}
点赞

发表评论

电子邮件地址不会被公开。必填项已用 * 标注