Spring boot 日記

Q. EnableAutoConfiguration って?
A. どうも設定が必要なパラメータを予めデフォルト値を持った設定群をフレームワークで持ってるっぽいのでそれを使うようにするアノテーションらしい。
自分のアプリケーションでのみ使う設定はその設定のプロパティとか Configuration アノテーションが付いたクラスとかで上書きするとかそういうやつっぽい。

Q. WebSocket 使うには?
A. EnableWebSocketMessageBroker アノテーションが付いた Configuration アノテーションのクラスを作って AbstractWebSocketMessageBrokerConfigurer クラスを継承して endpoint を追加すれば良い感じっぽい。

import org.springframework.context.annotation.Configuration;
import org.springframework.web.socket.config.annotation.AbstractWebSocketMessageBrokerConfigurer;
import org.springframework.web.socket.config.annotation.EnableWebSocketMessageBroker;
import org.springframework.web.socket.config.annotation.StompEndpointRegistry;

@Configuration
@EnableWebSocketMessageBroker
public class WebSocketConfig extends AbstractWebSocketMessageBrokerConfigurer {
        @Override
        public void registerStompEndpoints(StompEndpointRegistry registry) {
                registry.addEndpoint("/");
        }
}

Q. socket.io がクライアントになってる場合は?
A. さらっと探したけど java 実装の socket.io サーバが無いので無理臭い。自分で実装する必要がありそう。