快速搭建Spring Cloud项目,含Spring Gateway、Config Server、Oauth、Mongodb、MyBatis、Redis、Feigh
发布日期:2021-06-29 04:43:26 浏览次数:3 分类:技术文章

本文共 2242 字,大约阅读时间需要 7 分钟。

介绍:

  本文以开源的一款封装spring cloud框架来使用,为什么要用开源框架,开源框架省去很多重复性的工作。

  我发现每次在创建服务时都会进行很多重复性的配置工作,也有很多重复性的复制粘贴common库的工作,然而这些工作与业务本身并无关联,我将这些公共部分进行了封装,打造了一款非常简单实用的Spring Cloud框架,为我们省去很多配置上的工作,仅需写好配置文件,不需要重复的复制粘贴Config类。

  尤其是初探Spring Cloud的同学们,在搭建Oauth2时面临的各种繁琐,在项目进度紧张的情况下往往会放弃使用Oauth2改为Spring security + jwt,这样就失去了一次深入了解认识一款强大先进的鉴权系统的机会。而开源框架则已经配置和封装好了Oauth2的基础配置、鉴权配置、验证配置。我们仅需要配置自己所要使用的权限即可,这样给我们深入认识oauth2提供了机会,让我们在使用过程中了解它。

框架Github:

开源者也是老牌开源开发者,拥有Maven公共仓库的提交权限: 

DEMO:

先发DEMO致敬: demo中包含Gateway、Config Server、Oauth、Mongodb、MyBatis、Redis、Feigh。

Demo中包含需要的环境、测试的Postman配置、sql等完整项目。

使用:

此框架使用的SpringBoot版本是2.2.1.RELEASE,SpringCloud版本是Hoxton.RELEASE,版本是非常非常新的。但是由于Eureka 2x版本停止了维护,所以框架中所使用的服务注册为:Consul。使用也很简单,仅需要指定parent即可,再根据自己的需要,引用组件。

org.mountcloud
spring-cloud-common-parent
2.2.1.RELEASE-Hoxton.RELEASE-1.1
Main类添加此注解@ComponentScan(basePackages={"you project package","org.mountcloud.springcloud"})

一:架构图

 二:架构简介

  由于Eureka 2x停止维护,所以此框架中服务注册使用Consul进行注册服务。

  该项目是一个快速构建spring cloud的框架,并且针对spring boot的个别组件进行了扩展工作。使用的spring cloud版本:Hoxton.RELEASE,spring boot版本:2.2.1.RELEASE。

  项目提供了集成Oauth的解决方案、集成feigh的解决方案、集成Mongo的解决方案、集成mybatis的解决方案、集成redis的解决方案。

三:框架组成

Github中的README文件中包含了每个组成的介绍与使用方式。

引用关系parent。

https://github.com/MountCloud/spring-cloud-common-parent

common包。

https://github.com/MountCloud/spring-project-common

标准的mvc约束管理与spring cloud mvc扩展。

https://github.com/MountCloud/spring-cloud-mvc-common

扩展OauthClient与OauthResource的基础配置,feigh融合OauthClient。

https://github.com/MountCloud/spring-cloud-common-oauth-feigh

扩展mongo组件,可以支持ID自增等操作,并且针对mongo的mvc进行了约束。

https://github.com/MountCloud/spring-cloud-common-mongo

扩展mybatis组件,怕是spring boot与spring cloud是没有mybatis的,而此组件扩展了mybatis,引用即可让springboot或者spring cloud项目拥有mybatis。并且针对mybatis的mvc进行了约束。

https://github.com/MountCloud/spring-cloud-common-mybatis

扩展redis组件,此组件包含redis和cache,将存入的redis数据默认为json并且添加key的前缀为服务名。

https://github.com/MountCloud/spring-cloud-common-redis

 

扩展阅读:

  我将针对spring cloud各个服务单独搭建教程与技术和讲解写为单独的博客,这样在使用大家能够深入了解spring cloud的工作方式,让大家在不是使用框架的同时也可以搭建出属于自己特色的spring cloud。

  推荐大家根据教程的搭建顺序进行搭建。

搭建开发环境的Consul:

搭建config server:

待补充

搭建oauth server:

待补充

搭建一个普通的spring cloud服务,实现oauth client与resource

待补充

搭建Gateway

待补充

spring cloud中使用mybatis

待补充

转载地址:https://blog.csdn.net/zhanghaishan/article/details/104061960 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:搭建Spring cloud项目---搭建Consul
下一篇:我的世界Bukkit服务器插件开发---用java 10分钟快速开发一个自己的服务器插件

发表评论

最新留言

路过,博主的博客真漂亮。。
[***.116.15.85]2024年04月30日 10时10分10秒