远程调用的实现和注解配置

使用nacos作为注册中心:需要的配置

spring:
  datasource:                    //添加数据源
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://localhost:3306/gulimall_sms?useUnicode=true&characterEncoding=utf-8&allowMultiQueries=true&&useSSL=false&useLegacyDatetimeCode=false&serverTimezone=Asia/Shanghai
    username: root
    password: 123456
  application:                #在注册中心添加服务
    name: gulimall-coupon
  cloud:
    nacos:
   discovery:  //可写可不写,为了方便理解写了一个 server-addr: 127.0.0.1:8848  //指明注册中心的地址和端口,表明服务都是注册到这一个注册中心的端口, mybatis-plus: mapper-locations: classpath:/mapper/**/*.xml #classpath*:/mapper/**/*.xml 表示扫描classpath类路径下和其依赖的所有jar包 global-config: db-config: id-type: auto server: port: 6000  //声明本服务的端口

 

 

 

 @MapperScan("扫描的持久层包,为了能够连接数据库")

 

 这个是在application.yml文件中声明持久层的配置信息

 

 使用openfeign作为远程服务调用:在服务器启动端添加@EnableFeignClient("调用远程服务的包"),再启动服务器会自动扫描这个注解指定的包

 

 调用远程服务的名字,@FeignClient(value = "调用远程服务的名字")   value不能改成name,否则不能识别  这个注解表明这个接口可以调用远程服务

 

 这个是远程调用的实现

 

配置中心配置:添加依赖

 <dependency>
     <groupId>com.alibaba.cloud</groupId>
     <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
 </dependency>

在resource目录下新建bootstrap.properties文件:

①、添加应用名

②、添加配置中心地址

 

 

然后需要在配置中心新建应用名.properties添加配置就可以了

 

 最后在需要的controller添加  @RefreshScope注解:动态获取刷新配置

              @Value(${})  :动态获取value值

就可以了

 

 

posted @ 2020-08-14 09:54  七月在野,八月在宇  阅读(658)  评论(0编辑  收藏  举报