Я не уверен, что мой ответ будет точным на 100%, поскольку у меня нет опыта работы с MyBatis, но похоже, что ваша проблема не совсем связана с этой структурой.
В общем, если вы не укажетекаким-то образом границы транзакций, каждый вызов API ORM или JDBC пружины будет выполняться в соединении, полученном для этого вызова из dataSource / connectionPool.
Вы можете использовать транзакции, чтобы убедиться, что вы остаетесь с тем же соединением, или управлять соединением вручную.Я рекомендую первый способ использования Spring db apis.