Alıştırma - Azure Service Bus'tan ileti alma

Tamamlandı

Ş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-applicationbağı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

  1. klasörüne spring-receiver-application\src\main\resources dosyasını düzenleyin application.properties , aşağıdaki parametreleri ekleyin:

    server.port=9090
    
    spring.jms.servicebus.connection-string=<xxxxx>
    spring.jms.servicebus.idle-timeout=20000
    
  2. 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

  1. Dosyanın bulunduğu pom.xml örnek spring-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çinde PATHolduğunu varsayarmvn.

    mvn spring-boot:run
    
  2. 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>