Övning – Ta emot meddelanden från Azure Service Bus
Nu ska vi skapa ett Spring Boot-program som kan ta emot meddelanden från en Azure Service Bus-kö.
Skapa ett Spring Boot-projekt
Nu ska vi öppna ett nytt terminalfönster, och precis som vi gjorde med spring boot-programmet använder vi Spring Initializr för att skapa ett Spring Boot-projekt.
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 -
Ta emot meddelanden från en Service Bus-kö
Här lägger vi återigen till beroendet och konfigurationen.
Lägg till maven-beroendet för Service Bus Spring Boot Starter
pom.xml
I filen i lägger spring-receiver-application
du till följande kommando under beroenden:
<!-- 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>
Lägg till konfigurationsparametrarna
spring-receiver-application\src\main\resources
I mappen redigerar duapplication.properties
filen och lägger till följande parametrar:server.port=9090 spring.jms.servicebus.connection-string=<xxxxx> spring.jms.servicebus.idle-timeout=20000 spring.jms.servicebus.pricing-tier=premium
spring.jms.servicebus.connection-string
Ange egenskapen till anslutningssträng till service bus-namnområdet som du sparade tidigare.
Lägga till kod för att ta emot meddelanden från Service Bus
Sedan lägger vi till affärslogik för att ta emot meddelanden från en Service Bus-kö.
I katalogen src/main/java/com/example/demo
skapar du en ReceiveController.java
fil med följande innehåll:
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 + ">");
}
}
Köra appen lokalt
Växla tillbaka till roten i exempelmappen
spring-receiver-application
pom.xml
där filen finns och kör följande kommando för att starta Spring Boot-programmet. Det här steget förutsätter att du harmvn
installerat på din Windows-dator och att det finns iPATH
.mvn spring-boot:run
När programstarten är klar visas följande logginstruktioner i konsolfönstret.
Received <Hello> Received <HelloAgain> Received <HelloOnceAgain>
Utseendet på -instruktionerna anger att Spring Boot-programmet tar emot meddelanden från Service Bus-kön.
Se hela arbetsflödet i praktiken
Om avsändarprogrammet (från enhet 4) fortfarande körs kan du välja följande länk för att skicka ett meddelande till Service Bus-kön:
http://localhost:8080/messages?message=HelloOnceAgainAndAgain
Mottagarprogrammet tar emot meddelandet från Service Bus-kön och visar det i konsolen.
Received <HelloOnceAgainAndAgain>