gpt4 book ai didi

java - Spring 添加监听器作为组件而不是通过构造函数

转载 作者:太空宇宙 更新时间:2023-11-04 12:14:58 25 4
gpt4 key购买 nike

我的 SessionListener 组件如下所示:

@Component
public class SessionListener implements HttpSessionListener{

@Autowired
private PeerConnectionRepository peerConnectionRepository;

...
}

因为我使用 @Autowired 我必须加载 SessionListener 作为组件。我尝试这样做:

public class WebAppInitializer extends AbstractAnnotationConfigDispatcherServletInitializer {

@Autowired
SessionListener sessionListener;

@Override
public void onStartup(ServletContext servletContext) throws ServletException {
super.onStartup(servletContext);
servletContext.addListener(sessionListener);
}

...
}

但是我收到无法启动组件错误。如何将此 SessionListener 作为组件添加到 servletContext?请帮忙,干杯。

最佳答案

我认为你正在创建同一个bean的两个实例,因为你可能在某个地方进行了组件扫描(我遇到了同样的问题,并意识到@SpringBootApplication也包含组件扫描),在我的例子中,只需将其声明为普通类,然后创建它的bean即可解决问题。我希望这也适合您。

关于java - Spring 添加监听器作为组件而不是通过构造函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39506952/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com