Springcloud项目记录
最近都在写项目,项目主要根据mall-admin macrozheng/mall-learning写的,目前用到技术有gateway,nacos,sentinel,redis,dubbo。
服务网关
gateway 类似路由
gateway:
discovery:
locator:
enabled: true
lower-case-service-id: true #使用小写service-id
routes: #配置路由路径
- id: test-auth
uri: lb://test-auth
predicates:
- Path=/test-auth/**
filters:
- StripPrefix=1
- id: test-admin
uri: lb://test-admin
predicates:
- Path=/test-admin/**
filters:
- StripPrefix=1
//白名单
secure:
ignore:
urls: #配置白名单路径
- "/doc.html"
- "/swagger-resources/**"
- "/swagger/**"
- "/**/v2/api-docs"
- "/**/*.js"
- "/**/*.css"
- "/**/*.png"
- "/**/*.ico"
- "/webjars/springfox-swagger-ui/**"
- "/actuator/**"
- "/mall-auth/oauth/token"
可以将注册的服务统一起来,并设置资源服务器配置白名单,将接口文档统计起来用Knife4j,目前knifej2.0.6升级后@Enablexxx加了Web,接口看不到了,改了又可以(2.0.4根据mall-swarm项目使用吧)。
权限模块
权限模块抄mall-swarrm的spring security加oauth2结合,公开公钥可以直接访问,现在就/oauth/token改写没成功,一直标用户名密码登录,按取消变成401头疼。
用户模块
用户模块改写成Springdata jpa,复杂语句还没用,正常的crud顺利能跑
Dubbo远程调用
Dubbo的调用一直报java.lang.NoClassDefFoundError: org/apache/commons/lang3/StringUtils 无奈加个commons-langs
nacos注册中心 配置中心
设置成单机版,每次运行项目都要redis nacos运用
项目依赖
knifej 2.0.4 springboot 2.3.2(不知道是不是版本的坑,我的权限有毒啊) alibaba(2.2.5) jpa nacos-discovery nacos-config security oauth2 dubbo(dubbo跟alibaba会冲突去掉openfeign的包) gateway