Maison  >  Article  >  Java  >  Comment intégrer et utiliser les nocos de Springboot

Comment intégrer et utiliser les nocos de Springboot

WBOY
WBOYavant
2023-05-21 15:32:091212parcourir

Avant-propos

Nacos s'engage à vous aider à découvrir, configurer et gérer des microservices. Nacos fournit une série de fonctions faciles à utiliser pour vous aider à mettre en œuvre rapidement la découverte, la configuration, les métadonnées et la gestion du trafic de services dynamiques.

Nacos vous aide à créer, fournir et gérer des plateformes de microservices de manière plus agile et plus simple. Nacos est l'infrastructure utilisée pour créer une architecture d'application moderne centrée sur les services (telle que le paradigme des microservices et le paradigme cloud natif)

1, Créer le projet

Créez d'abord le projet maven, le pom du projet parent est le suivant :

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>org.example</groupId>
    <artifactId>configDemo</artifactId>
    <version>1.0-SNAPSHOT</version>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.3.2.RELEASE</version>
    </parent>
    <dependencies>
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
    </dependencies>
    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-alibaba-dependencies</artifactId>
                <version>2.2.5.RELEASE</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>
</project>

2 , démarrez nacos- L'url accessible par le service serveur

est : http://localhost:8848/nacos/ Le port par défaut est 8848, le mot de passe du compte est : nacos/nocos

3, écrivez le contrôleur pour la configuration dynamique sur prendre effet

import org.springframework.beans.factory.annotation.Value;
import org.springframework.cloud.context.config.annotation.RefreshScope;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
/**
 * @author yhq
 * @version 1.0
 * @date 2022/7/15 19:07
 */
@RestController
@RefreshScope  //@RefreshScope:需要配置这个才能动态更新配置。
public class TestController {
    @Value("${name}")
    private String name;
    @GetMapping("/getName")
    public String test(){
        return name;
    }
}

4, ajoutez le fichier de configuration boostrap .yaml

ordre de chargement par défaut de springboot :

bootstrap.properties -> bootstrap.yml -> application.properties -> Les .properties configurés avec la priorité la plus élevée seront chargés en premier. Ainsi, lorsque .properties et .yml existent en même temps, .properties ne sera pas valide et .yml prendra effet. ”

#Port
serveur:
port: 8888
#Nom du projet de configuration
spring:
application:
#configdemo par défaut est le nom DateId de nacos
nom: configdemo
#Spécifiez le fichier de configuration de test
profils:
actif : test
cloud:
nacos:
config:
adresse-serveur: localhost:8848
#Chargez le fichier nacos de yaml
extension de fichier : yaml

Vous pouvez voir que le fichier est chargé au démarrage :

Comment intégrer et utiliser les nocos de Springboot

5. La configuration nacos

est configurée avec configdemo et configdemo-test.yaml

Remarque : ses règles de chargement sont : # 1.DataId

- utilisé pour lire le fichier de configuration spécifique du centre de configuration distant Son format complet. est le suivant :

- ${prefix}-${spring.profile.active}.${file-extension}

a le préfixe a par défaut la valeur de spring.application.name et peut également être configuré via le fichier. élément de configuration spring.cloud.nacos. config.prefix à configurer.

b. spring.profile.active est le profil correspondant à l'environnement actuel. Pour plus de détails, veuillez vous référer à la documentation Spring Boot. active est vide, le connecteur correspondant - ne sera pas utilisé. Oui, le format d'épissage de dataId devient ${prefix}.${file-extension}

c est le format de données du contenu de configuration, qui peut. être configuré via l'élément de configuration spring.cloud.nacos.config.file-extension . Actuellement, seules les propriétés et les types yaml sont pris en charge

Si la configuration de name existe à la fois dans configdemo-test.yaml, configdemo-test.yaml. seront prioritaires. Les résultats d'accès sont les suivants :

.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer