Tous les produits
Search
Centre de documentation

ApsaraMQ for RocketMQ:Intégration avec Spring

Dernière mise à jour :Aug 09, 2026

Envoyez et recevez des messages à l'aide du SDK ApsaraMQ for RocketMQ pour Java dans une application Spring ou Spring Boot.

ApsaraMQ for RocketMQ fournit des projets de démonstration qui intègrent le SDK ons-client en tant que beans gérés par Spring, vous offrant ainsi des composants producteur et consommateur prêts pour l'injection de dépendances. Ce guide présente la démonstration Spring Boot. La démonstration Spring standard suit le même modèle.

Types de messages pris en charge

L'intégration Spring prend en charge les producteurs et les consommateurs pour les types de messages suivants :

  • Messages normaux

  • Messages ordonnés

  • Messages transactionnels

Remarque

L'intégration Spring ne prend pas en charge les messages planifiés ni les messages différés.

Prérequis

Avant de commencer, assurez-vous de disposer des éléments suivants :

Étape 1 : Télécharger le projet de démonstration

Clonez ou téléchargez l'un des projets de démonstration depuis GitHub :

Démonstration Référentiel
Spring Boot (utilisé dans ce guide) java-springboot-demo
Spring java-spring-demo

Étape 2 : Créer les ressources

Créez les ressources suivantes dans la console ApsaraMQ for RocketMQ :

  1. Créer une instance.

  2. Créer un topic. Définissez le type de message pour qu'il corresponde aux messages que vous prévoyez d'envoyer. Par exemple, sélectionnez Normal pour les messages normaux ou Ordered pour les messages ordonnés.

  3. Créer un groupe. Sélectionnez TCP comme type de protocole, car le SDK ons-client communique via TCP.

  4. Obtenir l'endpoint TCP de votre instance.

Étape 3 : Configurer le projet de démonstration

Ouvrez le projet de démonstration dans IntelliJ IDEA, puis mettez à jour la dépendance Maven et les propriétés de l'application.

Ajouter la dépendance ons-client

Ajoutez les dépendances suivantes à votre fichier pom.xml. Remplacez la version d'ons-client par la dernière version disponible. Pour l'historique des versions, consultez les notes de version.

<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>

    <dependency>
        <groupId>com.aliyun.openservices</groupId>
        <artifactId>ons-client</artifactId>
        <!-- Replace with the latest version -->
        <version>1.8.8.8.Final</version>
    </dependency>

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-test</artifactId>
        <scope>test</scope>
    </dependency>
</dependencies>

Définir les propriétés de l'application

Modifiez le fichier java-springboot-demo/src/main/resources/application.properties avec les informations relatives aux ressources obtenues à l'étape 2.

Paramètre

Description

Exemple

accessKey

ID AccessKey pour l'authentification

<your-access-key-id>

secretKey

Secret AccessKey pour l'authentification

<your-access-key-secret>

nameSrvAddr

Endpoint TCP de votre instance ApsaraMQ for RocketMQ

http://MQ_INST_XXXXXX.cn-hangzhou.mq.aliyuncs.com:80

topic

Nom du topic pour les messages normaux

noamal_topic

groupId

ID de groupe pour le consommateur

GID_test

tag

Expression de filtrage par tag. Utilisez * pour vous abonner à tous les messages, ou spécifiez des tags tels que `TagA

TagB`. Pour plus de détails, consultez la section Filtrage des messages.

*

orderTopic

Nom du topic pour les messages ordonnés

order_topic

orderGroupId

ID de groupe pour le consommateur de messages ordonnés

GID_order

orderTag

Expression de filtrage par tag pour les messages ordonnés

tagA

Étape 4 : Exécuter la démonstration

Assurez-vous que les classes situées sous java-springboot-demo/src/main/java/com/aliyun/openservices/springboot/example sont importées dans votre projet, puis exécutez la méthode main().

Référence du code d'exemple

La démonstration inclut des producteurs et des consommateurs pour chaque type de message pris en charge. Tout le code source est disponible sur GitHub.

Messages normaux

Rôle Classe
Producteur ProducerClient.java
Envoi synchrone SyncProducerTest.java
Envoi asynchrone AsyncProducerTest.java
Consommateur (filtrage par tag) ConsumerClient.java
Consommateur (filtrage SQL) SqlConsumerClient.java

Messages ordonnés

Rôle Classe
Producteur OrderProducerClient.java
Consommateur OrderConsumerClient.java

Messages transactionnels

Rôle Classe
Producteur TransactionProducerClient.java
Consommateur ConsumerClient.java

Étapes suivantes