Alıştırma - Azure Service Bus'tan ileti alma
Şimdi bir Azure Service Bus kuyruğundan ileti alabilen bir Spring Boot uygulaması oluşturalım.
Spring Boot projesi oluşturma
Şimdi yeni bir terminal penceresi açalım ve gönderen Spring Boot uygulamasında yaptığımız gibi Spring Initializr'ı kullanarak bir Spring Boot projesi oluşturacağız.
curl https://start.spring.io/starter.tgz -d type=maven-project -d dependencies=web -d baseDir=spring-receiver-application -d bootVersion=2.4.1.RELEASE -d javaVersion=1.8 | tar -xzvf -
Service Bus kuyruğundan ileti alma
Burada da bağımlılığı ve yapılandırmayı ekleyeceğiz.
Service Bus Spring Boot Starter için maven bağımlılığını ekleme
pom.xml
dosyanızda spring-receiver-application
bağımlılıkların altına aşağıdaki komutu ekleyin:
<dependency>
<groupId>com.microsoft.azure</groupId>
<artifactId>azure-servicebus-jms-spring-boot-starter</artifactId>
<version>2.3.3</version>
</dependency>
Yapılandırma parametrelerini ekleme
klasörüne
spring-receiver-application\src\main\resources
dosyasını düzenleyinapplication.properties
, aşağıdaki parametreleri ekleyin:server.port=9090 spring.jms.servicebus.connection-string=<xxxxx> spring.jms.servicebus.idle-timeout=20000
spring.jms.servicebus.connection-string
özelliğini daha önce kaydettiğiniz Service Bus ad alanınıza bağlantı dizesi olarak ayarlayın.
Service Bus'tan ileti almak için kod ekleme
Ardından, Service Bus kuyruğundan ileti almak için iş mantığı ekleyeceğiz.
dizininde src/main/java/com/example/demo
aşağıdaki içeriğe sahip bir ReceiveController.java
dosya oluşturun:
package com.example.demo;
import org.springframework.jms.annotation.JmsListener;
import org.springframework.stereotype.Component;
@Component
public class ReceiveController {
@JmsListener(destination = "test-queue-jms")
public void receiveMessage(String message) {
System.out.println("Received <" + message + ">");
}
}
Uygulamayı yerel olarak çalıştırma
Dosyanın bulunduğu
pom.xml
örnekspring-receiver-application
klasörün köküne dönün ve Spring Boot uygulamanızı başlatmak için aşağıdaki komutu çalıştırın. Bu adım, Windows bilgisayarınıza yüklediğinizi ve içindePATH
olduğunu varsayarmvn
.mvn spring-boot:run
Uygulama başlatma tamamlandıktan sonra konsol penceresinde aşağıdaki günlük deyimlerini görürsünüz.
Received <Hello> Received <HelloAgain> Received <HelloOnceAgain>
Deyimlerin görünümü, Spring Boot uygulamasının Service Bus kuyruğundan iletileri başarıyla aldığını gösterir.
İş akışının tamamını iş akışında görün
Gönderen uygulamanız (4. üniteden) çalışmaya devam ediyorsa, Service Bus kuyruğuna ileti göndermek için aşağıdaki bağlantıyı seçebilirsiniz:
http://localhost:8080/messages?message=HelloOnceAgainAndAgain
Alıcı uygulamanız iletiyi Service Bus kuyruğundan alır ve konsolunuzda görüntüler.
Received <HelloOnceAgainAndAgain>