SpringBoot、SpringCloud、SpringCloudAlibab对应版本选择

文章目录

  • 1:SpringBoot版本选择
    • git地址:
    • 如何选择版本
    • 官网推荐必须用2.x以后的版本
  • 2:SpirngCloud版本选择
    • git地址:
    • springcloud官网
    • springcloud和springboot版本对照
    • spirngcloud和springboot最终选择
  • 3:SpringCloudAlibab版本选择
  • 4:查看 Spring-Cloud-Alibaba版本 对应的其组件(Sentinel、Nacos等)版本,注意:一定要对应,不然会出现一些不兼容问题
  • 5:mybatis与spring整合版本对应关系参考
  • 6:mysql版本选择
  • 7:Druid:druid-spring-boot-starter版本

1:SpringBoot版本选择

git地址:

https://github.com/spring-projects/spring-boot/releases/

如何选择版本

图片[1] - SpringBoot、SpringCloud、SpringCloudAlibab对应版本选择 - MaxSSL
通过查看springboot的官方地址,截止2022年9月,最新版是2.7.3,那我们就要使用这个版本吗?非也,接下来我们还需要看springcloud的对应版本来选择springboot版本

官网推荐必须用2.x以后的版本

https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-2.0-Release-Notes
点击网址,我们可以看到官方已经强烈建议升级到2.x了;所以我们也不要为了稳定,再去选择1.x的版本
图片[2] - SpringBoot、SpringCloud、SpringCloudAlibab对应版本选择 - MaxSSL

2:SpirngCloud版本选择

git地址:

https://github.com/spring-projects/spring-cloud
可以看到springcloud已经不再github上维护了,要去官网查看
图片[3] - SpringBoot、SpringCloud、SpringCloudAlibab对应版本选择 - MaxSSL

springcloud官网

https://spring.io/projects/spring-cloud
图片[4] - SpringBoot、SpringCloud、SpringCloudAlibab对应版本选择 - MaxSSL
我们可以看到截止2022年9月springcloud最新稳定版本(GA-(GenerallyAvailable),表示稳定版本)为2021.0.3
注:解释下为什么springcloud版本还有字母

SpringCloud的版本关系 Spring Cloud 采用了英国伦敦地铁站的名称来命名,并由地铁站名称字母A-Z依次类推的形式来发布迭代版本SpringCloud是一个由许多子项目组成的综合项目,各子项目有不同的发布节奏。为了管理SpringCloud与各子项目的版本依赖关系,发布了一个清单,其中包括了某个SpringCloud版本对应的子项目版本。为了避免SpringCloud版本号与子项目版本号混淆,SpringCloud版本采用了名称而非版本号的命名,这些版本的名字采用了伦敦地铁站的名字,根据字母表的顺序来对应版本时间顺序。例如Angel是第一个版本, Brixton是第二个版本。当SpringCloud的发布内容积累到临界点或者一个重大BUG被解决后,会发布一个”service releases”版本,简称SRX版本,比如Greenwich.SR2就是SpringCloud发布的Greenwich版本的第2个SRX版本。
但是目前看来springcloud从H版后又改成了日期为准的版本

springcloud和springboot版本对照

图片[5] - SpringBoot、SpringCloud、SpringCloudAlibab对应版本选择 - MaxSSL
通过官网我们可以看到springcloud和springboot之间的版本对应关系
当然了spirng官网也给我们了官方接口,直接返回版本对照结果:https://start.spring.io/actuator/info
返回的结果用json格式化一下:
图片[6] - SpringBoot、SpringCloud、SpringCloudAlibab对应版本选择 - MaxSSL

spirngcloud和springboot最终选择

有的朋友就说了,boot最新版本是2.7.3,cloud最新版本是2021.0.3,那是不是就这样选就可以了,
No,最新的不一定就是最好的,我们还可以从网上上找到更合适的:
图片[7] - SpringBoot、SpringCloud、SpringCloudAlibab对应版本选择 - MaxSSL
点击查看版本文档:
图片[8] - SpringBoot、SpringCloud、SpringCloudAlibab对应版本选择 - MaxSSL
可以看到spirngcloud2021.0.3,官方最推荐的版本是spirngboot2.6.8
所以我们按照官方推荐就可以啦

3:SpringCloudAlibab版本选择

我们已经选择好了springcloud和boot的版本,如果我们要加入springcloudalibab框架,也要重新考虑alibab框架的版本号,不过好在alibaba是阿里开源的,api也是中文的,非常容易看懂
访问地址:https://github.com/alibaba/spring-cloud-alibaba/wiki/版本说明
图片[9] - SpringBoot、SpringCloud、SpringCloudAlibab对应版本选择 - MaxSSL
如我们上边所说,springcloud从H版本后就更改了版本命名方式,所以spirngcloudAlibab也跟着更改了方式,可以说是非常的贴心;给阿里比个心,最起码这是我看过最明白的版本说明了,起码是中文的;

4:查看 Spring-Cloud-Alibaba版本 对应的其组件(Sentinel、Nacos等)版本,注意:一定要对应,不然会出现一些不兼容问题

之前我们说过spring从来不是重复造轮子,他是把各个技术融合在一个大的生态环境中,所以我们也要查看springcloudAlibab其他组件的版本号,以免后续开发中出现不兼容问题
访问地址:https://github.com/alibaba/spring-cloud-alibaba/wiki/版本说明
图片[10] - SpringBoot、SpringCloud、SpringCloudAlibab对应版本选择 - MaxSSL

5:mybatis与spring整合版本对应关系参考

mybatis官方参照表:http://mybatis.org/spring/

mybatis中文官网:https://mybatis.org/mybatis-3/zh/

点击官方参照表:
图片[11] - SpringBoot、SpringCloud、SpringCloudAlibab对应版本选择 - MaxSSL
我们可以根据JDK版本选择,选用需要的 mybatis-spring-boot-starter 版本或 mybatis 版本

也可以打开mybatis对应maven对应版本: https://mvnrepository.com/artifact/org.mybatis.spring.boot/mybatis-spring-boot-starter
进行mybatis-spring-boot-starter 版本选择
图片[12] - SpringBoot、SpringCloud、SpringCloudAlibab对应版本选择 - MaxSSL

6:mysql版本选择

官方文档地址是:https://dev.mysql.com/doc/index-connectors.html
图片[13] - SpringBoot、SpringCloud、SpringCloudAlibab对应版本选择 - MaxSSL
当然了,mysql-connector-java的版本选择还是要跟着mysql数据库服务的版本走,最起码到2022年,mysql5.7还没过时;

如果你的mysql是8.x版本(最新版本),并且是用springboot父项目整合就不需要再单独再管,因为他包含了

                <dependency>            <groupId>mysql</groupId>            <artifactId>mysql-connector-java</artifactId>        </dependency>

7:Druid:druid-spring-boot-starter版本

maven:https://mvnrepository.com/artifact/com.alibaba/druid-spring-boot-starter
从maven文档中选择一份合适的新一点的版本号就行

因为druid-spring-boot-starter只是在druid基础上进行了一次封装,专门用来整合spring-boot项目;
如果springboot项目想使用druid也是可以的,但是需要手动编写配置类并注入到bean中,并加载对应的配置参数;但是不建议,明明有现成封装好的jar,就直接使用就好了!!!
所以我们直接引入druid-spring-boot-starter而不是单纯的druid

        <dependency>            <groupId>com.alibaba</groupId>            <artifactId>druid</artifactId>            <version>1.2.8</version>        </dependency>                <dependency>            <groupId>com.alibaba</groupId>            <artifactId>druid-spring-boot-starter</artifactId>            <version>1.2.8</version>        </dependency>
© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享