Ćwiczenie — wysyłanie komunikatów do usługi Azure Service Bus

Ukończone

W tej lekcji utworzysz aplikację Spring Boot, która wysyła komunikaty do kolejki usługi Azure Service Bus. Wykonaj poniższe kroki lokalnie.

Tworzenie projektu Spring Boot

Aby utworzyć projekt Spring Boot, użyjemy narzędzia Spring Initializr z następującym wierszem polecenia:

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 -

Wysyłanie komunikatów do kolejki usługi Service Bus

Teraz wyślijmy kilka komunikatów do kolejki usługi Service Bus.

Dodawanie zależności narzędzia maven dla szablonu startowego Spring Boot usługi Service Bus

pom.xml W pliku w pliku dodaj spring-sender-applicationnastępujące polecenie w obszarze zależności:

		<!-- 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>

Dodawanie parametrów konfiguracji

  1. W folderze spring-sender-application\src\main\resources edytuj application.properties plik, dodaj następujące parametry:

    spring.jms.servicebus.connection-string=<xxxxx>
    spring.jms.servicebus.idle-timeout=20000
    spring.jms.servicebus.pricing-tier=premium
    
  2. spring.jms.servicebus.connection-string Ustaw właściwość na parametry połączenia na przestrzeń nazw usługi Service Bus, która została zapisana wcześniej.

Dodawanie kodu do wysyłania komunikatów do usługi Service Bus

Następnie dodamy logikę biznesową do wysyłania komunikatów do kolejki usługi Service Bus.

W katalogu src/main/java/com/example/demoutwórz SendController.java plik o następującej zawartości:

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;
    }
}

Lokalne uruchamianie aplikacji

  1. Wróć do katalogu głównego folderu przykładowego spring-sender-application , w którym pom.xml znajduje się plik, i uruchom następujące polecenie, aby uruchomić aplikację Spring Boot. W tym kroku przyjęto założenie, że zainstalowano mvn go na komputerze z systemem Windows i znajduje się on w pliku PATH.

    mvn spring-boot:run
    
  2. Po zakończeniu uruchamiania aplikacji możesz wybrać następujące linki, aby wysyłać komunikaty do kolejki usługi Service Bus.

    http://localhost:8080/messages?message=Hello
    
    http://localhost:8080/messages?message=HelloAgain
    
    http://localhost:8080/messages?message=HelloOnceAgain
    

    Wartość ciągu można zmienić w parametrze zapytania komunikatu i wysłać dowolny tekst do kolejki usługi Service Bus.

    Przeglądarka wyświetla wszystko, co jest przekazywane jako parametr ciągu zapytania komunikatu, co oznacza, że usługa Service Bus akceptuje komunikat.

Wyświetlanie komunikatów w kolejce usługi Service Bus

Uwaga

Chociaż wyświetlanie komunikatów pomaga zrozumieć stronę wysyłania komunikatów, ten krok jest opcjonalny.

Te komunikaty zostaną odebrane w następnym kroku tego samouczka.

Możesz przejść do wyświetlania komunikatów w Eksploratorze usługi Service Bus w witrynie Azure Portal:

  1. W witrynie Azure Portal wybierz pozycję Kolejki w menu po lewej stronie w obszarze Jednostki.

  2. Wybierz odpowiednią kolejkę. Na przykład kolejka dla tego pokazu to test-queue-jms.

  3. W okienku po lewej stronie wybierz pozycję Eksplorator usługi Service Bus.

  4. Wybierz pozycję Zobacz od początku. Powinny zostać wyświetlone wszystkie trzy komunikaty wysyłane przy użyciu poleceń HTTP.

    Screenshot of the Service Bus explorer peek experience.

  5. Wybierz komunikat, aby wyświetlić treść komunikatu w dolnym okienku.

    Screenshot of the Service Bus explorer with peeked messages.