3.2. Hello World 실행
Hello World 예제에서는 브로커에 대한 연결을 생성하고 예제 큐에 인사말이 포함된 메시지를 전송한 다음 다시 수신합니다. 성공하면 수신된 메시지를 콘솔에 출력합니다.
예: "Hello World!" 전송 및 수신 - HelloWorld.java
package net.example;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.CommandLineRunner;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.jms.annotation.EnableJms;
import org.springframework.jms.annotation.JmsListener;
import org.springframework.jms.core.JmsTemplate;
@EnableJms
@SpringBootApplication
public class HelloWorld implements CommandLineRunner {
@Autowired
private JmsTemplate jmsTemplate;
public static void main(String[] args) {
SpringApplication.run(HelloWorld.class, args);
}
@Override
public void run(String... strings) throws Exception {
sendMessage("Hello World!");
}
public void sendMessage(String text) {
System.out.println(String.format("Sending '%s'", text));
this.jmsTemplate.convertAndSend("example", text);
}
@JmsListener(destination = "example")
public void receiveMessage(String text) {
System.out.println(String.format("Received '%s'", text));
}
}
예제 실행
예제 프로그램을 컴파일하고 실행하려면 다음 절차를 사용하십시오.
프로세스
-
새 프로젝트 디렉터리를 생성합니다. 이를 <
project-dir>이라고 합니다. 예제 목록을 다음 위치에 복사합니다.
<project-dir>/src/main/java/net/example/HelloWorld.java텍스트 편집기를 사용하여 새 <
project-dir>/pom.xml파일을 만듭니다. 다음 XML을 여기에 추가합니다.<project> <modelVersion>4.0.0</modelVersion> <groupId>net.example</groupId> <artifactId>example</artifactId> <version>1.0.0-SNAPSHOT</version> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>3.1.0</version> </parent> <dependencies> <dependency> <groupId>org.amqphub.spring</groupId> <artifactId>amqp-10-jms-spring-boot-starter</artifactId> <version>3.1.2.redhat-00001</version> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build> </project>프로젝트 디렉터리로 변경하고
mvn명령을 사용하여 프로그램을 컴파일합니다.$ mvn clean packageJava
명령을사용하여 프로그램을 실행합니다.$ java -jar target/example-1.0.0-SNAPSHOT.jarHello World 예제를 실행하면 다음과 같은 콘솔 출력이 생성됩니다.
$ java -jar target/example-1.0.0-SNAPSHOT.jar . ____ _ __ _ _ /\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \ ( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \ \\/ ___)| |_)| | | | | || (_| | ) ) ) ) ' |____| .__|_| |_|_| |_\__, | / / / / =========|_|==============|___/=/_/_/_/ :: Spring Boot :: (v2.0.5.RELEASE) [...] 2018-11-05 16:21:09.849 INFO 14805 --- [main] net.example.HelloWorld: Started HelloWorld in 1.074 seconds (JVM running for 1.38) Sending 'Hello World!' Received 'Hello World!'