static静态注入的坑

错误的方式:

静态方法只能用静态的变量,不能调用非静态的,否则直接报错。
看起来正确的方式:(实际仍有问题)
 
 
把变量变成静态变量,就可以正常注入了,实际上仍然有问题,静态变量会在编译完成之后,运行直接加载,也就是在还没有引用变量的时候,给变量直接赋予了一个空值,即为null。所以上述这种运行的时候,会抛出运行时异常java.lang.NullPointerException,相应的类并没有被依赖注入。
 
正确的做法:不该在工具类中调用引用变量,工具类一般都是静态方法,稍不注意就会踩坑。
原文地址:https://www.cnblogs.com/zhishuiyushi/p/10239984.html