spring框架下@value注解属性static无法获取值问题

网友投稿 903 2022-11-19

spring框架下@value注解属性static无法获取值问题

spring框架下@value注解属性static无法获取值问题

目录@value注解属性static无法获取值解决办法@Value注解取不到值的几种情况几种获取不到值的特殊情况如下

@value注解属性static无法获取值

@Value("${appId}")

private static String appid;

这样是无法直接获得值的

解决办法

需要这样写

private static String appid;

@Value("${appId}")

public void setAppid(String appId) {

this.appid = appid;

}

@Value注解取不到值的几种情况

在spring的框架中,我们经常使用@Value注解来获取定义在application.properties的属性值,正常情况下是可以轻松的获取到值的,但是有几种特殊情况下是获取不到值的,在这记录下,以防止以后犯错误。正常获取的用法如下:

在application.properties中定义一个属性值:

正常情况下在代码里面这样获取:

@Value("${ftpIP}")

private String ftpIP;

几种获取不到值的特殊情况如下

情况一:使用static或者final修饰了tagValue

@Value("${ftpIP}")

private static String ftpIP;

@Value("${ftpUserName}")

private final Shttp://tring ftpUserName;

情况二:用该注解的类上面没有加注解,即不能被spring管理

public class FTPManagerService {

@Value("${ftpIP}")

private static String ftpIP;

}

情况三:类被new新建了实例,而没有使用@Autowired

public class FTPManagerService {

@Value("${ftpIP}")

private static String ftpIP;

}

public class Test{

/*错误用法*/

FTPMhttp://anagerService f = newhttp:// FTPManagerService ();

/*正jsIed确用法*/

@Autowired

FTPManagerService f2;

}

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:002-webBuilder的HelloWorld应用与表格应用
下一篇:005-WebBuilder使用结构元素进行网页布局
相关文章

 发表评论

暂时没有评论,来抢沙发吧~