diff --git a/build.gradle b/build.gradle index 892dc71..d4a02ba 100644 --- a/build.gradle +++ b/build.gradle @@ -28,6 +28,10 @@ dependencies { implementation 'org.springframework.boot:spring-boot-starter-web' implementation 'org.springframework.boot:spring-boot-starter-websocket' implementation group: 'org.webjars', name: 'stomp-websocket', version: '2.3.3-1' + //rabbitMQ + implementation 'org.springframework.boot:spring-boot-starter-amqp' + implementation 'org.springframework.boot:spring-boot-starter-reactor-netty:3.0.0' + implementation 'io.netty:netty-resolver-dns-native-macos:4.1.68.Final:osx-aarch_64' compileOnly 'org.projectlombok:lombok' annotationProcessor 'org.projectlombok:lombok' testImplementation 'org.springframework.boot:spring-boot-starter-test' diff --git a/src/main/java/Be9room/festime/config/WebSocketConfigurer.java b/src/main/java/Be9room/festime/config/WebSocketConfigurer.java index 67db3c4..7934e3d 100644 --- a/src/main/java/Be9room/festime/config/WebSocketConfigurer.java +++ b/src/main/java/Be9room/festime/config/WebSocketConfigurer.java @@ -1,9 +1,9 @@ package Be9room.festime.config; import lombok.RequiredArgsConstructor; +import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Configuration; import org.springframework.messaging.simp.config.MessageBrokerRegistry; -import org.springframework.util.AntPathMatcher; import org.springframework.web.socket.config.annotation.EnableWebSocketMessageBroker; import org.springframework.web.socket.config.annotation.StompEndpointRegistry; import org.springframework.web.socket.config.annotation.WebSocketMessageBrokerConfigurer; @@ -12,6 +12,8 @@ @EnableWebSocketMessageBroker @RequiredArgsConstructor public class WebSocketConfigurer implements WebSocketMessageBrokerConfigurer { + @Value("${rabbit.host}") + private String rabbitHost; // private final StompHandler stompHandler; @Override public void registerStompEndpoints(StompEndpointRegistry registry) { @@ -23,10 +25,15 @@ public void registerStompEndpoints(StompEndpointRegistry registry) { @Override public void configureMessageBroker(MessageBrokerRegistry registry) { -// registry.setPathMatcher(new AntPathMatcher(".")); - registry.setApplicationDestinationPrefixes("/pub"); -// registry.enableStompBrokerRelay("/queue", "/topic", "/exchange", "/amq/queue"); - registry.enableSimpleBroker("/sub"); + registry.setApplicationDestinationPrefixes("/pub") + .enableStompBrokerRelay("/topic") + .setRelayHost(rabbitHost) + .setVirtualHost("/") + .setRelayPort(61613) + .setClientLogin("admin") + .setClientPasscode("admin") + .setSystemLogin("admin") + .setSystemPasscode("admin"); } // @Override diff --git a/src/main/java/Be9room/festime/controller/MessageController.java b/src/main/java/Be9room/festime/controller/MessageController.java index 9e649a0..2c0eb5f 100644 --- a/src/main/java/Be9room/festime/controller/MessageController.java +++ b/src/main/java/Be9room/festime/controller/MessageController.java @@ -20,13 +20,12 @@ public class MessageController { */ @MessageMapping(value = "/guestbook/enter") public void enter(MessageDTO message){ - log.info("eee"); message.setMessageType(MessageType.ENTER.toString()); message.setMessage(message.getMemberName() + "님이 방명록에 참여했어요!"); /* 메세지 저장 부분 */ - template.convertAndSend("/sub/guestbook", message); + template.convertAndSend("/topic/guestbook", message); } /** @@ -35,12 +34,11 @@ public void enter(MessageDTO message){ */ @MessageMapping(value = "/guestbook/message") public void message(MessageDTO message){ - log.info("messsaggee"); message.setMessageType(MessageType.MESSAGE.toString()); /* 메세지 저장 부분 */ - template.convertAndSend("/sub/guestbook", message); + template.convertAndSend("/topic/guestbook", message); } /** @@ -54,7 +52,7 @@ public void leave(MessageDTO message){ /* 메세지 저장 부분 */ - template.convertAndSend("/sub/guestbook", message); + template.convertAndSend("/topic/guestbook", message); } diff --git a/src/main/resources/application.properties b/src/main/resources/application.properties deleted file mode 100644 index eea48b4..0000000 --- a/src/main/resources/application.properties +++ /dev/null @@ -1 +0,0 @@ -spring.application.name=festime diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml new file mode 100644 index 0000000..11f75f0 --- /dev/null +++ b/src/main/resources/application.yml @@ -0,0 +1,7 @@ +spring: + application: + name: festime_BE + + +rabbit: + host: ${RABBIT_HOST}