springboot项目中注入bean后,调用时报n

需求:

在socket接收到上报数据后,在handler中调用工具类中ProtocolAnalyse的conAnalyse(byte[] data, int dataLen)解析数据。解析数据后,将解析后的结果保存至数据库。注入了三个bean:

    @Autowired
    private PersonTeService personTeService;

    @Autowired
    private TargetTeService targetTeService;

    @Autowired
    private EnvTeService envTeService;

这三个bean完成对数据库的增、删、改、查。

但是总是报空指针异常如下:

 经过排查,代码141行内容如下:

List<PersonTe> person = personTeService.getPersonTe(map);

代码本身没有任何问题,因为在springboot提供的test工具类中都能正常运行,最后,定位到是因为在handler中使用ProtocolAnalyse工具类时,是通过new该对象的一个实例,spring IOC容器是没有去看管他的,所以并不在同一个上下文中,那么new出来的这个类里面的实例方法,当然也调用不到spring IOC上下文里的实例了,所以当你调用你new出来的实例的方法时候,该方法里调用的spring的bean,都是没有注入的对象的。

最后通过使用SpringContextUtil.getBean("ProtocolAnalyse")工具类实例化该实力后,问题解决。

ProtocolAnalyse protocolAnalyse = (ProtocolAnalyse)SpringContextUtil.getBean("ProtocolAnalyse");
protocolAnalyse.conAnalyse(rInfo,rInfo.length);

相关推荐

  1. SpringBootWebSokcet无法注入Bean对象的解决方案

    2023-12-06 14:50:02       53 阅读
  2. SpringBoot】如何在 Utils 工具类注入 Bean

    2023-12-06 14:50:02       50 阅读
  3. springboot 重新注册 bean

    2023-12-06 14:50:02       24 阅读
  4. SpringBoot项目常用注解总结

    2023-12-06 14:50:02       37 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2023-12-06 14:50:02       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2023-12-06 14:50:02       100 阅读
  3. 在Django里面运行非项目文件

    2023-12-06 14:50:02       82 阅读
  4. Python语言-面向对象

    2023-12-06 14:50:02       91 阅读

热门阅读

  1. Python edge-tts库全部声音模型一览表

    2023-12-06 14:50:02       38 阅读
  2. 深度学习与深度迁移学习有什么区别?

    2023-12-06 14:50:02       56 阅读
  3. flutter的Overlay详解

    2023-12-06 14:50:02       60 阅读
  4. IDC网络设备监控脚本-FLOW流监控

    2023-12-06 14:50:02       40 阅读
  5. 代码随想录二刷 |队列与栈 |有效的括号

    2023-12-06 14:50:02       69 阅读
  6. ubuntu重启后下无wifi,蓝牙和飞行模式切换问题

    2023-12-06 14:50:02       58 阅读
  7. github可访问但无法clone问题

    2023-12-06 14:50:02       49 阅读
  8. Linux计算机系统参数获取和压力测试

    2023-12-06 14:50:02       54 阅读
  9. Ubuntu22.04LTS配置rsync服务

    2023-12-06 14:50:02       59 阅读
  10. [cmake] --- find_package

    2023-12-06 14:50:02       44 阅读