@Componentpublic class ModelMapper { @AutoWired private static AssignmentManager assignmentManager; public static void add(){ a+b; } }
静态方法是属于类的,普通方法才属于对象,spring注入是在容器中实例化变量的,并且静态是优先于对象存在的,所以直接在静态方法中调用注入的静态变量其实是为null的 可以这样写
private static AssignmentManager assignmentManager; @Autowired public ModelMapper(AssignmentManager assignmentManager) { ModelMapper.assignmentManager = assignmentManager; }
我们知道@Autowired 注释,可以对类成员变量、方法及构造函数进行标注,完成自动装配的工作,此种方式就是在构造函数上使用@Autowired。