Spring @Autowired注解在非Controller/Service中注入为null


参考:https://blog.csdn.net/qq_35056292/article/details/78430777

问题出现:
在一个非controller/service类中,我需要注入Config类

@Autowired
MyConfig myConfig;

public int getUrl(){
    String url=myConfig.getUrl;
}

这时候,myConfig是null

解决方法:

@Component  // 关键1,将该工具类注册为组件
public class TokenUtil {
    @Autowired
    MyConfig myConfig;

    public static TokenUtil tokenUtil;  // 关键2

    public TokenUtil() {
    }

    // 关键3
    @PostConstruct
    public void init() {
        tokenUtil = this;
        tokenUtil.tokenRepository = this.tokenRepository;
    }

使用的时候,改成

public String getUrl(){
        MyConfig MyConfig=TokenUtil.tokenUtil.myConfig;
        String url= myConfig.getUrl;
}


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM