已有SpringBoot后端项目 升级为 芋道框架(yudao-cloud)指南

已有SpringBoot后端项目 升级为 芋道框架(yudao-cloud)指南



启动芋道框架
复制代码
 ###### 后端:[快速启动(后端项目)](https://cloud.iocoder.cn/quick-start/)
复制代码
 ###### 前端:[快速启动(后端项目)](https://cloud.iocoder.cn/quick-start/)
复制代码
 ###### 注意:

 * 必须要下载Redis和Nacaos,在后端的快速启动中有教程

 * 启动nacos的命令在教程中有误,没有进行集群部署的nacos要使用以下命令启动

   ```bash
   startup.cmd -m standalone
   ```
学习新建一个服务(学会了新建服务就可以进行旧业务的迁移了)
复制代码
 ###### 教程:[新建服务](https://cloud.iocoder.cn/module-new/)

 教程里面遇到几个问题,有的找到了原因,有的还没有找到,不过不影响后续,只是需要了解,对理解项目的整体架构有帮助
 * **不同包的路由请求不一样**

   这个是涉及到请求路由转发,实现方法请看这里 -\> [视频链接](https://wx.zsxq.com/dweb2/index/topic_detail/415814421482458)
 * **启动demo服务后,swagger文档使用knife4j打不开,并且产生报错(未解决但不影响)**

   前端报错

   后端报错
 * **教程中测试Test接口有误**

   就算模拟了授权和租户,根据之前提供的yml文件无法完成请求,所以这里会返回错误

   ```json
   {
       "code": 401,
       "data": null,
       "msg": "账号未登录"
   }
   ```

 * **修改gateway的配置文件,增加demo的路由之后,文档上说可以正常测试admin和app的Test接口了,但是注意:并不行!**

   因为没有关闭租户和添加Authorization字段,返回的结果仍然是不行!
复制代码
 ###### 修改 yudao-cloud 中的yml配置文件

 * **路由转发**

   修改gateway中的application.yaml(这个在新建服务的教程中有)

   添加**路由转发规则**,以便请求被正确转发

   添加**knife4j的路由转发规则**,这样就可以正常查看swagger文档了(\[knive4j的官方教程)
 * **关掉租户** ([SaaS 多租户【字段隔离】](https://cloud.iocoder.cn/saas-tenant/#_1-%E5%A4%9A%E7%A7%9F%E6%88%B7%E6%98%AF%E4%BB%80%E4%B9%88))

   修改system中的biz的application.yaml

   将租户关掉(如果你的旧项目中不涉及到租户,目前个人理解是每个微服务都需要修改这个地方来关掉租户,否则会报"请求的租户标识未传递,请进行排查"这个错误!)

   首先关闭租户功能,但是不够,还需要在忽略url中添加规则,把所有的url全部忽略!!!

   前端还有一个字段要改(.env中),字段名字和文档中不一样了,所以使用文档中的进行全局搜索是搜不到的
 * **Token认证**

   查看[功能权限](https://cloud.iocoder.cn/resource-permission/#_2-token-%E8%AE%A4%E8%AF%81%E6%9C%BA%E5%88%B6)文档,修改system中的biz的application-local.yaml

   理论上可以开启 Token 的模拟机制,并且设置Token 模拟机制的 Token 前缀,但是实操之后没用,尊重教程还是给改一下吧
复制代码
 ###### 在项目中添加业务需要的jar包

 * **要注意添加jar包的时候,很容易和芋道原有的maven架构产生依赖冲突(尤其是knive4j),需要进行依赖排除**

   ```xml
   <dependency>
       <groupId>xx.xx.xx</groupId>
       <artifactId>xx-xx-spring-boot-starter</artifactId>
       <version>1.0.19</version>
       <exclusions>
           <exclusion>
               <groupId>org.springframework.boot</groupId>
               <artifactId>spring-boot-starter</artifactId>
           </exclusion>
           <exclusion>
               <groupId>org.springframework.boot</groupId>
               <artifactId>spring-boot-autoconfigure</artifactId>
           </exclusion>
           <exclusion>
               <groupId>mysql</groupId>
               <artifactId>mysql-connector-java</artifactId>
           </exclusion>
           <exclusion>
               <groupId>com.github.xiaoymin</groupId>
               <artifactId>knife4j-openapi3-jakarta-spring-boot-starter</artifactId>
           </exclusion>
       </exclusions>
   </dependency>
   ```
复制代码
 ###### 测试新建业务是否可以响应

 * **进行登录,获取token进行认证**

 * **测试app-test**

 * **测试admin-test**

   注意加上请求头的授权认证

   ```http
   Authorization:Bearer f4fb08efe73a4a98bb248da70f4cc514
   ```

相关推荐
程序员码歌38 分钟前
【零代码AI编程实战】AI灯塔导航-总结篇
android·前端·后端
Sirius Wu1 小时前
Maven环境如何正确配置
java·maven
java坤坤1 小时前
GoLand 项目从 0 到 1:第八天 ——GORM 命名策略陷阱与 Go 项目启动慢问题攻坚
开发语言·后端·golang
元清加油1 小时前
【Golang】:函数和包
服务器·开发语言·网络·后端·网络协议·golang
健康平安的活着2 小时前
java之 junit4单元测试Mockito的使用
java·开发语言·单元测试
bobz9652 小时前
GPT-4.1 对比 GPT-4o
后端
Java小白程序员2 小时前
Spring Framework :IoC 容器的原理与实践
java·后端·spring
小小愿望3 小时前
前端无法获取响应头(如 Content-Disposition)的原因与解决方案
前端·后端
xuTao6673 小时前
Easy Rules 规则引擎详解
java·easy rules
追逐时光者4 小时前
C#/.NET/.NET Core技术前沿周刊 | 第 50 期(2025年8.11-8.17)
后端·.net