为什么我需要@Configuration注释时使用WebSocketMessageBrokerConfigurer?&l



我正在尝试学习websocket并遵循指南。它建议以:

开头
@Configuration
@EnableWebSocketMessageBroker
public class MyConfiguration implements WebSocketMessageBrokerConfigurer {
@Override
public void registerStompEndpoints(StompEndpointRegistry registry) {
registry.addEndpoint("/portfolio").withSockJS();
}
@Override
public void configureMessageBroker(MessageBrokerRegistry registry) {
registry.enableStompBrokerRelay("/queue/", "/topic/");
registry.setApplicationDestinationPrefixes("/app/");
}
}

我真的不明白注释@Configuration的含义。

是我的理解,Bean容器发现信息,但如果只使用@override在这个类中,那么在这种情况下它做什么?

@Configuration

https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/context/annotation/Configuration.html

指示一个类声明一个或多个@Bean方法,并且可以由Spring容器处理以在运行时为这些bean生成bean定义和服务请求…

@EnableWebSocketMessageBroker

这个注释添加到一个@ configuration类使broker-backed使用更高级别的消息传递消息了WebSocket订阅"协议…

https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/web/socket/config/annotation/EnableWebSocketMessageBroker.html

这意味着没有@Configuration, @EnableWebSocketMessageBroker将被spring容器忽略。所以WebSocket不会被启用。

相关内容

  • 没有找到相关文章

最新更新