在静态方法里调用spring注入的方法

时间:2023-03-08 23:18:53
在静态方法里调用spring注入的方法

在静态方法里直接调用非静态方法是不行的。 
那如何调用spring注入的方法呢? 

@Component 
public class AutoLoginUtil { 
    @Autowired 
    private IUserService userService; 

    private static AutoLoginUtil autoLoginUtil; 

    @PostConstruct 
    public void init() { 
        autoLoginUtil = this; 
        autoLoginUtil.userService = this.userService; 
    } 

    public static void autoLogin() { 
        autoLoginUtil.userService.queryUserAutoLogin(); 
    } 


IUserService userService是spring注入的方法。 
主要是init()和@PostConstruct注解。