
其他的module中引入了mall-common模块
每个Module分别连接着一个数据库

<!--1.第一步:服务的注册发现-->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>
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
@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服务中加东西
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>
@RequestMapping("/member/list")
public R membercoupons() {
CouponEntity couponEntity = new CouponEntity();
couponEntity.setCouponName("满100减10");
return R.ok().put("coupons", Arrays.asList(couponEntity));
}
在mall-member模块中写一个接口
@FeignClient("mall-coupon") //调用的服务名
public interface CouponFeginService {
//用哪个接口写哪个
@RequestMapping("/coupon/coupon/member/list") //这里写的是在mall-coupon中接口的完整请求路径
public R membercoupons();
}

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

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

