目录地址:
SpringCloudAlibaba整合-CSDN博客
一、nacos服务部分
1.下载nacos,并执行数据库脚本:nacos-mysql.sql
2.修改配置文件,配置mysql
3.启动nacos
./startup.sh -m standalone
4.访问:http://127.0.0.1:8848/nacos 用户名密码都是:nacos
5.创建3个配置文件,给3个微服务使用,展示 一下user的配置:
spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
username: root
password: 12345
# mybatis
mybatis:
mapper-locations: classpath:/mapper/**/*.xml
configuration:
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
map-underscore-to-camel-case: true # 驼峰命名
type-aliases-package: com.test.models
二、代码部分
用user为例,其他微服务一样
1.添加依赖
<!-- SpringCloud Alibaba Nacos -->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>
<!-- SpringCloud Alibaba Nacos Config -->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>
2.启动类添加注解 @EnableDiscoveryClient
3.添加bootstrap.yml
cloud版本选择的问题,这里动态获取nacos配置和之前有点不同
server:
port: 8081
spring:
application:
# 应用名称
name: my-user
profiles:
active: user-test
cloud:
nacos:
discovery:
# 服务注册地址
server-addr: 127.0.0.1:8848
namespace: fcfd084d-dea1-4a49-922b-2fa4d4e70dd8
group: dev
config:
server-addr: 127.0.0.1:8848
namespace: fcfd084d-dea1-4a49-922b-2fa4d4e70dd8
group: dev
# 配置文件格式
file-extension: yml
config:
import:
- optional:nacos:application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} # 监听 angss:application-user-test.yml
# - optional:nacos:test01.yml?group=group_01 # 覆盖默认 group,监听 group_01:test01.yml
# - optional:nacos:test02.yml?group=group_02&refreshEnabled=false # 不开启动态刷新
# - nacos:test03.yml # 在拉取nacos配置异常时会快速失败,会导致 spring 容器启动失败
# config:
# # 配置中心地址
# server-addr: 127.0.0.1:8848
# namespace: fcfd084d-dea1-4a49-922b-2fa4d4e70dd8
# group: dev
# # 配置文件格式
# file-extension: yml
# # 共享配置
# shared-configs:
# - application-user-test.yml
4.启动user微服务,查看nacos,user服务已经注册,并且可以访问controller的方法
5.同样的方法,处理order和product组件