一:最终效果图
Nacos注册列表:
Nacos配置中心:
请求统一返回结果:
二:相关版本介绍
(前话:SpringBoot、SpringCloud、SpringCloud alibaba、Nacos之间是有版本关系的,如果需要变更版本,见官方github:版本说明 · alibaba/spring-cloud-alibaba Wiki · GitHub)
配置 | 版本号 |
SpringBoot | 2.3.12.RELEASE |
SpringCloud | Hoxton.SR12 |
SpringCloud Alibaba | 2.2.8.RELEASE |
Nacos | 2.1.0 |
MySQL | 8.0.28(可根据自己实际修改) |
Mybatis-Plus | 3.4.2(可根据自己实际修改) |
Maven | 3.8.1(可根据自己实际修改) |
JDK | 1.8(可根据自己实际修改) |
三:项目简述
以聚合项目的多模块方式创建,iam_core为框架核心模块,以jar包的方式导入业务模块 ;iam_admin和iam_sso模块为业务模块,以自己实际业务为准进行模块的新增;
nacos.cfg:项目配置到nacos的配置
iam_core:
公共返回bean--IamResponse:业务模块在Controller层直接使用即可
Swagger配置--SwaggerConfiguration:具体配置信息见文件nacos.cfg
统一异常处理--IamException、IamExceptionHandler:对系统的异常信息进行了统一拦截处理
统一请求参数和响应参数的打印--LogPrint、LogPrintAspect:拦截com.*.controller.*Controller.*(..)路径的所有接口,打印请求参数及响应参数,其中包括生成请求唯一ID,便于日志排查。
iam_admin/iam_sso:
*Application:启动类上需要加上业务模块的包路径和iam_core模块的包路径(com.core.*)扫描
log4j2.xml:采用log4j2最为日志框架,输出到日志文件
banner.txt:根据实际业务情况是否需要,如果需要变更,在在线生成
bootstrap.yml:系统级配置文件,配置了端口、nacos信息、health及log4j2、根据自己实际业务去修改配置信息,业务参数全部配置到nacos进行配置管理