Spring Cloud Chinese Manual: https://springcloud.cc/spring-cloud-consul.html
C'est-à-dire que lorsque nous utilisons Consul Config, il est préférable d'établir la structure du répertoire correspondant dans Consul qui convient à un certain service et à la structure du répertoire adapté à tous les services.
Cette interface utilisateur Web Consul Consul: Springboot nous fournit trois environnements Dev: Default Development Environment Test: Test Environment Prod: Production Environment
PS:
1. Chaque fois que nous modifions les informations de configuration sur Consul, nous enverrons une demande A / actualiser à notre code pour actualiser notre projet. En réalisant nos valeurs de manière dynamique, il n'est pas nécessaire de redémarrer le projet. Cependant, lorsque nous utilisons @Value pour obtenir la valeur, bien que nous puissions obtenir la valeur et actualiser le projet, nous ne modifierons pas la valeur. Nous obtiendrons toujours la valeur configurée sur Consul au début du projet et la rafraîchir en temps réel.
2. Lorsque nous configurons les mêmes propriétés qu'une colonne de service dans le fichier d'application global tel que: Server-SMS, lorsque le projet Server-SMS est démarré, nous recherchons d'abord la configuration dans le répertoire, puis recherchons la configuration globale. Si nous sommes dans le répertoire,
Combat pratique:
Configuration du fichier pom.xml:
<dependency> <proupId> org.springframework.cloud </rombasid> <ArtifactId> Spring-Cloud-Starter-Consul-Config </ ArfactId> </Dependency>
BootStarp.xml Configuration: (S'il est configuré dans l'application, il ne prendra pas effet, bootstrap.yml sera chargé d'abord que l'application.properties)
Spring: Cloud: Consult: Host: 100.1.00.0 #Host: 00.0.100.200 Port: 8500 Activé: Vrai Configuration: Activé: Vrai #Default est vrai - Format: YAML # Indique les fichiers de Valeur
Le format donne des exemples pour illustrer deux types (le YAML du projet Server-SMS est utilisé dans cette colonne):
PROPRIÉTÉS:
Yaml:
Méthode de valeur:
1. Appliquez la valeur via l'annotation de CONFIGURATION PROPERTIES (Modifiez la valeur de la propriété sur la consultation après le démarrage du projet, et la valeur de la propriété dans le projet changera immédiatement):
Bean correspondant:
// Le nom doit être écrit comme le nom au-dessus du consul. Les répertoires à plusieurs niveaux peuvent être écrits sur le consul, par exemple: UserInfo: Nom: liaowenwen // Le projet d'écriture correspondant (prefix = "userInfo") Si le projet utilise plus de choses de configuration, il est recommandé d'utiliser ce formulaire @configurationproperties () Classe publique UserInfo {Nom de chaîne privée; } public void setName (string name) {this.name = name; }Le code du contrôleur prend la valeur:
@Autowired Private UserInfo UserInfo; @ApiOperation (value = "get consuLinfo", notes = "get consuLinfo") public chaîne getConsuLinfo () {return userInfo.getName (); }Classe de démarrage du projet:
@Springbootapplication @enablediscoveryclient @enableConfigurationProperties ({userInfo.class}) public class application {public static void main (string [] args) {springApplication.run (application.class, args);}; 2. Obtenez l'annotation de la valeur à la valeur (modifiez la valeur du consul après le démarrage du projet, et la valeur du projet ne change pas. Seule la valeur obtenue en recommençant le projet est la valeur modifiée. La demande d'envoi / actualisation n'est pas valide)
@Value Private String Name; @ApiOperation (value = "get consuLinfo", notes = "get consuLinfo") public string getConsuLinfo () {return name; }3. Valeur statique
@Component @configuration classe publique consulkv {public static String smsurl; Nom d'utilisateur de chaîne statique publique; Mot de passe de chaîne statique publique; @Value ("$ {ssbp.smsurl}") public void setsmsurl (String smsurl) {consulkv.smsurl = smsurl; } @Value ("$ {ccb.job.login.username}") public void setUsername (String username) {consulkv.username = username; } @Value ("$ {ccb.job.login.password}") public void setPassword (String Motword) {consulkv.password = mot de passe; } Exemple d'adresse de code: https://github.com/liaowenn/spring-cloud-consul-config
Ce qui précède est tout le contenu de cet article. J'espère que cela sera utile à l'apprentissage de tous et j'espère que tout le monde soutiendra davantage Wulin.com.