Cvičení – příjem zpráv ze služby Azure Service Bus

Dokončeno

Teď vytvoříme aplikaci Spring Boot, která může přijímat zprávy z fronty služby Azure Service Bus.

Vytvoření projektu Spring Boot

Pojďme otevřít nové okno terminálu a stejně jako jsme to udělali s aplikací Spring Boot odesílatele, pomocí Aplikace Spring Initializr vytvoříme projekt Spring Boot.

curl https://start.spring.io/starter.tgz -d type=maven-project -d dependencies=web -d baseDir=spring-receiver-application -d bootVersion=3.3.0.RELEASE -d javaVersion=1.8 | tar -xzvf -

Příjem zpráv z fronty služby Service Bus

Tady znovu přidáme závislost a konfiguraci.

Přidání závislosti maven pro úvodní sadu Spring Boot služby Service Bus

pom.xml Do souboru v spring-receiver-applicationsouboru přidejte do závislostí následující příkaz:

		<!-- https://mvnrepository.com/artifact/com.azure.spring/spring-cloud-azure-starter-servicebus-jms -->
		<dependency>
		    <groupId>com.azure.spring</groupId>
		    <artifactId>spring-cloud-azure-starter-servicebus-jms</artifactId>
		    <version>5.18.0</version>
		</dependency>

Přidání parametrů konfigurace

  1. spring-receiver-application\src\main\resources Do složky upravte application.properties soubor a přidejte následující parametry:

    server.port=9090
    
    spring.jms.servicebus.connection-string=<xxxxx>
    spring.jms.servicebus.idle-timeout=20000
    spring.jms.servicebus.pricing-tier=premium
    
  2. spring.jms.servicebus.connection-string Nastavte vlastnost na připojovací řetězec na obor názvů služby Service Bus, který jste si uložili dříve.

Přidání kódu pro příjem zpráv ze služby Service Bus

Dále přidáme obchodní logiku pro příjem zpráv z fronty služby Service Bus.

src/main/java/com/example/demo V adresáři vytvořte ReceiveController.java soubor s následujícím obsahem:

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 + ">");
    }
}

Aplikaci spustíte místně.

  1. Přepněte zpět do kořenové složky ukázky spring-receiver-application , ve které pom.xml se soubor nachází, a spuštěním následujícího příkazu spusťte aplikaci Spring Boot. Tento krok předpokládá, že jste na počítači s Windows nainstalovali mvn a je v systému PATH.

    mvn spring-boot:run
    
  2. Po dokončení spuštění aplikace se v okně konzoly zobrazí následující příkazy protokolu.

    Received <Hello>
    Received <HelloAgain>
    Received <HelloOnceAgain>
    

    Vzhled příkazů značí, že aplikace Spring Boot úspěšně přijímá zprávy z fronty Service Bus.

Zobrazení celého pracovního postupu v akci

Pokud je vaše aplikace odesílatele (z lekce 4) stále spuštěná, můžete vybrat následující odkaz, který odešle zprávu do fronty služby Service Bus:

http://localhost:8080/messages?message=HelloOnceAgainAndAgain

Vaše přijímací aplikace obdrží zprávu z fronty služby Service Bus a zobrazí ji v konzole.

Received <HelloOnceAgainAndAgain>