Övning – Skicka meddelanden till Azure Service Bus
I den här lektionen skapar du ett Spring Boot-program som skickar meddelanden till en Azure Service Bus-kö. Slutför följande steg lokalt.
Skapa ett Spring Boot-projekt
För att skapa vårt Spring Boot-projekt använder vi Spring Initializr med följande kommandorad:
curl https://start.spring.io/starter.tgz -d type=maven-project -d dependencies=web -d baseDir=spring-sender-application -d bootVersion=3.3.0.RELEASE -d javaVersion=1.8 | tar -xzvf -
Skicka meddelanden till en Service Bus-kö
Nu ska vi skicka några meddelanden till en Service Bus-kö.
Lägg till maven-beroendet för Service Bus Spring Boot Starter
pom.xml
I filen i lägger spring-sender-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-sender-application\src\main\resources
I mappen redigerar duapplication.properties
filen och lägger till följande parametrar: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 skicka meddelanden till Service Bus
Sedan lägger vi till affärslogik för att skicka meddelanden till en Service Bus-kö.
I katalogen src/main/java/com/example/demo
skapar du en SendController.java
fil med följande innehåll:
package com.example.demo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jms.core.JmsTemplate;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class SendController {
private static final String queue = "test-queue-jms";
@Autowired
private JmsTemplate jmsTemplate;
@GetMapping("/messages")
public String postMessage(@RequestParam String message) {
jmsTemplate.send(queue, s -> s.createTextMessage(message));
return message;
}
}
Köra appen lokalt
Växla tillbaka till roten i exempelmappen
spring-sender-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 programmet har startats kan du välja följande länkar för att skicka meddelanden till Service Bus-kön.
http://localhost:8080/messages?message=Hello
http://localhost:8080/messages?message=HelloAgain
http://localhost:8080/messages?message=HelloOnceAgain
Du kan ändra strängvärdet i meddelandefrågeparametern och skicka valfri text till Service Bus-kön.
Webbläsaren visar det som skickas som frågesträngsparametern för meddelandet, vilket innebär att Service Bus accepterar meddelandet.
Se meddelandena i Service Bus-kön
Kommentar
Även om det är valfritt att visa meddelandena så är det här steget valfritt.
Dessa meddelanden tas emot i nästa steg i den här självstudien.
Du kan fortsätta att visa meddelandena i Service Bus-utforskaren i Azure-portalen:
I Azure-portalen väljer du Köer på den vänstra menyn under Entiteter.
Välj lämplig kö. Kön för den här demonstrationen är till exempel test-queue-jms.
I den vänstra rutan väljer du Service Bus Explorer.
Välj Granska från början. Du bör se alla tre meddelanden som du har skickat med HJÄLP av HTTP-kommandon.
Välj ett meddelande om du vill se meddelandetexten i det nedre fönstret.