背景:因为业务需求,需要整个项目除了适配oracle和mysq服务器托管网l后还需要适配PostgreSQL,在此背景下就出现了一系列的问题。
踩坑一:databaseId
连接数据库后启动发现某些查询报错传入的sql参数是空,经过反复排查定位到对应的MyBaits的xml文件,我贴出原始的文件
文件中判断databaseid是mysql还是oracle来实现数据库语法的差异性,例如该查询语句为了防止未传入参数全库查询导致数据库cpu和io飙升而进行限制只返回1000条,然而上面databaseid这个参数由于PostgreSQL数据库返回的是PostgreSQL 导致走了一个空查询条件。
然后在xml中添加了postgresql最后发现还是没有匹配
最后跟踪代码找到了一个枚举类,配置了参数就映射否则返回空
修改了该类后让PostgreSQL映射成oracle该空sql报错解决。
服务器托管,北京服务器托管,服务器租用 http://www.fwqtg.net
机房租用,北京机房租用,IDC机房托管, http://www.fwqtg.net
相关推荐: GOTC 2023 嘉宾畅谈:开源助推云原生、汽车软件发展
大家期待已久的 GOTC 2023 召开在即 组委会广邀各个论坛嘉宾讲师 畅谈开源与各技术领域的发展趋势 让小伙伴们先睹为快 本期出场嘉宾来自“ Cloud Native Summit ”与“OpenSDV 软件定义汽车”分论坛: 一:过去一年/几年,您所…