您当前的位置: 首页 >  spring

qq_34412985

暂无认证

  • 2浏览

    0关注

    1061博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

spring的@Autowired注入无法实例化service问题解决(继承netty的simpleInbountHandler处理类后无法实例化service)

qq_34412985 发布时间:2021-03-26 16:06:45 ,浏览量:2

首先目前我写的项目是springboot+netty,在接收客户端传输的数据时调用service一直报null指针异常

  刚开始没有想到是service无法实例化的问题,一直在测试数据方面的问题,后来去群里讨论才知道问题所在

  我这里讲的netty接收数据的handler类,但是基本都大同小异   如果我们直接在一个不是controller类的里面注入@Autowired的时候,而且还去调用就会报null指针

 

像这样如果直接调用的话就会报错

下面来说怎么解决 首先需要了解两个注解 @Component  跟 @PostConstruct spring注解中@component就是说把这个类交给Spring管理, 因为不清楚这个类是属于哪个层面,所以就用@Component。 @PostContruct是spring框架的注解,在方法上加该注解会在项目启动的时候执行该方法,也可以理解为在spring容器初始化的时候执行该方法。

如上图所示 加上关键步骤,之后通过下图调用,调用service就不会报null了

这样就解决了无法实例化service的问题。

@Value注解取不到值,比如GameServerHandler中有如下属性,但是使用value注解注入不进去,只能通过GameServerHandler.name去取值

@Value(${server.name})

private String  name;  

关注
打赏
1653291990
查看更多评论
立即登录/注册

微信扫码登录

0.0396s