公司使用MyBatis-plus版本为3.0.7.1,mybatis-plus3.4.2对clickhouse是支持的,无奈怕升级影响大,只能在现有基础上调整mybatis-plus代码了。
mybatis
在项目中将mybatis-plus源码引入到项目工程
修改DbType,加入clickhouse的支持
修改PagingationInterceptor以支持clickhouse的处理,否则直接报不支持该数据库。
修改JdbcUtils,加入对clickhouse的支持,同时阅读mybatis-plus3.4.2的相关源码,进行如下修改
如果clickhouse的sql没有使用特殊用法,比如global join,并且没有使用Druid数据库连接池, 那么可以不进行其他设置。如果使用了Druid数据库连接池,那么就会报错了,因为Druid数据库连接池不支持global join会直接报错,最新版本不知道是否修复了该问题。
对于这个问题可以使用mybatis的数据库连接池来解决
至此mybatis-plus可以和clickhouse完美整合了