关于低版本Spring Boot(2.2.x)带来的适配(信创国产、生产集群)问题

117 阅读1分钟

1.在我的项目本地开发完部署到某大单位的生产环境的时候,遇到了个问题。大单位由于性质原因标榜高性能和信创国产,使用的中间件实在是适配不了俺们老旧的厚重的被层层封装的后端“春天”框架。 2.首先我们的框架:前辈留下的商用“高级”框架,通过最外层的pom文件看起来,的确是Spring全家桶: image.png 以及他所接入的Mybatis-Plus插件:说到这个我就特别火大,这个重型商用框架可牛x。pom.xml一层又一层,引入的自己封装的组件,粑粑超级多那种。总之我是在parent的pom.xml下的子模块module的业务服务项目,然后在业务项目api子模块的pom.xml中找到了一个封装的mybatis框架引用:

<dependency>
    <groupId>com.ootd.oliba</groupId>
    <artifactId>oliba-starter-mybatis</artifactId>
</dependency>

主要包含了1.苞米豆的mybatis-plus,官方2.mybatis(mybatis-spring,mybatis,mybatis-typehandlers-jsr310),3.spring-boot-starter-jdbc(ex了tomcat-jdbc),4.alibaba的druid,5.商用框架的一些脚手架(auth缓存认证相关,auto注解处理相关),还有一个6.ClassFinal Maven 插件,主要用于对 Java 字节码进行加密和混淆,以保护代码不被反编译。

<build>
    <plugins>
        <plugin>
            <groupId>net.roseboy</groupId>
            <artifactId>classfinal-maven-plugin</artifactId>
            <version>1.0.0</version>
            <executions>
                <execution>
                    <phase>package</phase>
                    <goals>
                        <goal>classFinal</goal>
                    </goals>
                </execution>
            </executions>
            <configuration>
                <password>${password}</password>
                <packages>com.oliba</packages>
            </configuration>
        </plugin>
    </plugins>
</build>

重点就是这个mybatis-plus的版本3.4.2,和华为数据库出现适配问题。 3.生产的中间件因为某些高大上的原因,只能去适配生产的redis集群和国产高斯数据库。而我们厚重的商用框架适配的是redis单点,其久远的Spring Boot版本没办法兼容ACL策略,对于高斯数据库mybatis-plus也是到了3.5.x以上的版本才支持。 4.解决方案:(相关的解决方案后续更新。)