Websocket不能注入bean的解决办法

2020-08-06  本文已影响0人  夜色001

一、问题现象

websoctserver经常需要处理具体业务,要调用容器中的bean。websoctserver已用@component标注,使用Atuowire注入bean时失败。bean等于null。

二、问题原因

spring维护的是单实例,websocket为多实例。每次请求建立链接的时候,都会生成一个新的bean。

三、解决方案

让websoctserver持有一个静态的bean对象,在创建时通过@Atuowire标注方法,自动注入值。

四、示意代码

    private static OgLocationService ogLocationService;

    @Autowired
    public void setOgLocationService(OgLocationService ogLocationService) {
        WebSocketUserServer.ogLocationService = ogLocationService;
    }
上一篇下一篇

猜你喜欢

热点阅读