账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    Dubbo+SpringBoot整合: 依赖注入Null Pointer Exception的问题
    48
    0

    我用Dubbo+SpringBoot搭建微服务
    controller和service分别属于两个服务
    里面分别有如下类

    @RestController
    @RequestMapping("product")
    public class ProductController{
    
        @Reference(version="1.0.0")
        ProductService productService;
        
        @GetMapping("create")
        public String createProduct(){
            return productService.createProduct();
        }
    }
    
    
    @Component
    @Service(version = "1.0.0")
    public class ProductServiceImpl implements ProductService {
       @Override
        public String createProduct(){
            return "created";
        }
    }
    

    我发现如果我先启动service服务,后启动controller服务,运行OK
    但是如果我先启动controller服务,后启动service服务,productService就是null,出现Null Pointer Exception

    我的理解是:因为service后启动,所以controller中的productService依赖注入时找不到实例,注入失败。
    但是这样的话,那假如有两个service微服务,A和B,A中的某个类需要B中某个类的服务,而B中某个类又需要A中某个类的服务,那谁先启动都会有问题啊。
    怎么回事?

    1
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 流光夏央 普通会员 1楼
      502 Bad Gateway

      502 Bad Gateway


      nginx
    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部