
 其他的module中引入了mall-common模块
 每个Module分别连接着一个数据库
1.开启nacos服务

2.在mall-commom中引入依赖
<!--1.第一步:服务的注册发现-->
<dependency>
	<groupId>com.alibaba.cloud</groupId>
	<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>
3.在服务中(非common模块)的application.yml文件中配置nacos的地址
 
spring:
  #配置Nacos Server地址并且要写application.name
  cloud:
    nacos:
      discovery:
        server-addr: 127.0.0.1:8848
  application:
    name: mall-member
    #其他的服务分别配置name: mall-coupon、mall-member、mall-order、mall-product、mall-ware
4.在给个Module中的启动类上配置注解@EnableDiscoveryClient
 
@SpringBootApplication
@EnableDiscoveryClient
public class MallMemberApplication {
   
    public static void main(String[] args) {
   
        SpringApplication.run(MallMemberApplication.class, args);
    }
}
通过以上步骤就可以在nacos看到注册进去的模块
 

========================================================================
 接下来就要使用远程调用用来从一个服务调用另一个服务中的方法:Fegin声明式远程调用
 说明:mall-member服务想要调用mall-coupon服务,那就在mall-member服务中加东西
5.在mall-member的pom.xml问价中引入依赖
<dependency>
	 <groupId>org.springframework.cloud</groupId>
     <artifactId>spring-cloud-starter-openfeign</artifactId>
 </dependency>
6.在mall-coupon中写一个方法准备让mall-member调用
@RequestMapping("/member/list")
public R membercoupons() {
   
    CouponEntity couponEntity = new CouponEntity();
    couponEntity.setCouponName("满100减10");
    return R.ok().put("coupons", Arrays.asList(couponEntity));
}
7.编写一个接口,告诉SpringCloud这个接口需要调用远程服务
在mall-member模块中写一个接口
@FeignClient("mall-coupon") //调用的服务名
public interface CouponFeginService {
   
	//用哪个接口写哪个
    @RequestMapping("/coupon/coupon/member/list") //这里写的是在mall-coupon中接口的完整请求路径
    public R membercoupons();
}
8.开启远程调用的功能

@EnableFeignClients(basePackages = {
   "com.eternal.mall.member.fegin"})
@SpringBootApplication
@EnableDiscoveryClient
public class MallMemberApplication {
   
    public static void main(String[] args) {
   
        SpringApplication.run(MallMemberApplication.class, args);
    }
}
9.开始使用

以上是使用nacos作为注册中心使用
 
===================================================
以下使用nacos作为配置中心管理各个服务的配置信息
 
10.引入Nacos Config Starter
因为每个模块都可能使用,所以直接放在mall-common模块中
<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
    <version>2.1.0.RELEASE</version>
</dependency>
11.在需要使用的各个模块下的/src/main/resources/bootstrap.properties配置文件中配置Nacos Config元数据
 
spring.application.name=mall-coupon #根据模块名改变
spring.cloud.nacos.config.server-addr=127.0.0.1:8848
12.给配置中心添加一个当前服务.properties的配置文件
默认规则:应用名.properties
 可以添加任何配置数据
 
13.获取nacos中建立的配置文件数据

转载:https://blog.csdn.net/weixin_45131762/article/details/125473679
查看评论
					