当前位置: 首页> 文旅> 文化 > 品牌设计公司网站_建立网站目录结构的原则_网上哪里可以免费打广告_企业全网推广公司

品牌设计公司网站_建立网站目录结构的原则_网上哪里可以免费打广告_企业全网推广公司

时间:2025/8/29 17:59:08来源:https://blog.csdn.net/JavaLLU/article/details/144652612 浏览次数:0次
品牌设计公司网站_建立网站目录结构的原则_网上哪里可以免费打广告_企业全网推广公司

首先我们需要安装consul,到官网下载Consul

Install | Consul | HashiCorp Developer

在解压的consul目录下 执行启动命令

consul agent -dev 启动服务

-dev表示开发模式   -server表示服务模式

启动后在浏览器访问8500端口
http://localhost:8500/可以看到服务管理界面

项目要注册到中心需要做一些改动

一、添加pom依赖

添加cloud依赖

<dependencyManagement><dependencies><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-dependencies</artifactId><version>${spring-cloud.version}</version><type>pom</type><scope>import</scope></dependency></dependencies>
</dependencyManagement>添加consul依赖
<dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-consul-discovery</artifactId>
</dependency>

二、添加yml文件中的consul配置

spring:application:name: test-demo  #注册到注册中心名称cloud:consul:host: localhost #注册中心服务ipport: 8500discovery:heartbeat:enabled: trueservice-name: ${spring.application.name}prefer-ip-address: true

三、启动类添加注解

@EnableDiscoveryClient  应用可以自动注册到服务注册中心。
@EnableDiscoveryClient
@SpringBootApplication
public class Mis001Application {public static void main(String[] args) {SpringApplication.run(Mis001Application.class, args);}}

到这里我们就配置好了项目的注册,启动后该服务会自动注册到注册中心

启动项目后我们在注册中心可以看到注册的服务,可以看到我们注册的服务

通过

LoadBalancerClient和DiscoveryClient 可以读取注册中心服务的信息

操作Consul的K/v存储

我们先在Consul中新建一个文件

写完之后点击下面的保存

下面我们修改我们的项目

1.首先我们在pom文件中添加依赖

		<!--consul 添加K/V存储--><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-consul-config</artifactId></dependency><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-bootstrap</artifactId></dependency>

2.在配置文件中添加consul中的config配置信息

spring:application:name: test-demo  #注册到注册中心名称cloud:consul:host: localhost #注册中心服务ipport: 8500discovery:heartbeat:enabled: trueservice-name: ${spring.application.name}prefer-ip-address: trueconfig:profile-separator: ',' #默认的分隔符为  ","  我们自定义为"-"format: yaml  #文件格式为ymlfail-fast: trueprefix: config  #基础文件夹名称default-context: applicationdata-key: data

新建Myconfig类


import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.cloud.context.config.annotation.RefreshScope;
import org.springframework.stereotype.Component;/*** 获取consult config 的key/vlue*/
@RefreshScope
@ConfigurationProperties(prefix = "jdbc")
public class MyConfig {private String username;private String password;private My my;public String getUsername() {return username;}public void setUsername(String username) {this.username = username;}public String getPassword() {return password;}public void setPassword(String password) {this.password = password;}public My getMy() {return my;}public void setMy(My my) {this.my = my;}
}
My 类
public class My {private String year;public String getYear() {return year;}public void setYear(String year) {this.year = year;}
}

新建ConfigController

@RestController
public class ConfigController {@Autowiredprivate MyConfig myConfig;@RequestMapping("/getMyConfig")public String getMyConfig(){return myConfig.toString();}@RequestMapping("/getUsername")public String getUsername(){return myConfig.getUsername();}@RequestMapping("/getYear")public String getYear(){return myConfig.getMy().getYear();}
}

启动类添加注解 使 @ConfigurationProperties 注解的类生效。

@EnableConfigurationProperties({MyConfig.class})

到此我们完成配置,可以启动项目访问我们controller中的方法获取到我们在Consul的配置文件里的值

但是这里有一个问题,开始我配置的内容写到了application-uat配置文件中,启动后获取不到方法,然后我把内容写到bootstrap.yml中就可以访问到了

bootstrap.yml

#bootstrap.yml是系统级的,优先级更加高
spring:application:name: test-democloud:consul:host: localhostport: 8500discovery:service-name: ${spring.application.name}prefer-ip-address: trueconfig:profile-separator: ',' #默认的分隔符为  ","  我们自定义为"-"format: yaml  #文件格式为ymlfail-fast: trueprefix: config  #基础文件夹名称default-context: applicationdata-key: data

关键字:品牌设计公司网站_建立网站目录结构的原则_网上哪里可以免费打广告_企业全网推广公司

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: