zoukankan      html  css  js  c++  java
  • springboot自定义类@Resource注入为null的问题

    最近用spring boot ,在controller外面即自定义的类里报错

    java.lang.NullPointerException

    debug了下发现@Resource注入为null

    查了不少资料也没解决问题,最后终于找到一种解决办法,为了以后查找方便特意记录下来

    @Component
    public class SaveStructures {
        private static SaveStructures structures;
        @Resource
        private ApiFilesService filesService;
        @Resource
        private ApiAssetsMapper assetsMapper;
    
        public SaveStructures() {
        }
    
        //通过@PostConstruct实现初始化bean之前进行的操作
        @PostConstruct
        public void init() {
            // 初使化时将已静态化的Service实例化
            structures = this;
        }
    
        ……
            ……
            structures.assetsMapper.batchAddAssets(list);
            ……
            structures.filesService.findByCondition(condition);
    
    }

    注:

      注入类的调用方法

        structures.filesService.findByCondition(condition);

    说明:

      被@PostConstruct修饰的方法会在服务器加载Servlet的时候运行,并且只会被服务器调用一次,类似于Serclet的inti()方法。

      被@PostConstruct修饰的方法会在构造函数之后,init()方法之前运行

  • 相关阅读:
    软件工程周总结09
    单词统计
    第一期冲刺03
    第一期冲刺02
    第一期冲刺01
    人月神话阅读笔记03
    团队冲刺四
    团队冲刺三
    团队冲刺二
    单词统计
  • 原文地址:https://www.cnblogs.com/baby123/p/11290407.html
Copyright © 2011-2022 走看看