刚进新公司遇见的问题,spring整合mybatis ,Quartz
quartz启动多线程交互通过mybatis交互DB层的时候报 mapped statements collection already contains value for ..... 异常。
但不影响web工程正常运行,查看了下。是多个线程同时并发 初始化mybatis sql文 出现的异常,
解决方案有二种,
一是 将quartz 多个定时job依顺序延时加载。
二是mybaits初始化时加上sqlSesssionTemplate.getConfiguration().buildAllStatement。让Mybatis初始化时就编译sql语句。
记录备忘。