目前再开发中遇到了写工具类的时候,有的地方引包.但是没生效的问题。
错误示例:
@Component
public class Util {
@Autowired
private static IDemo demo;
public static void check(String str) {
demo.text(str);
}
}
这样写的时候 demo为null,找不到接口类IDemo的。
正确示例:
@Component
public class Util {
private static IDemo demo;
@Autowired
public void setDemo(IDemo demo) {
Util.demo= demo;
}
public static void check(String str) {
demo.text(str);
}
}
这样就可以正常调用了。
注意点:
1.class上必须要@Component
2.在set的方法上需要@Autowired
3.在set方法中使用:类名.接口=入参 的方式