Это не поддерживается из коробки в mybatis.Если вы хотите изменить это поведение, вам нужно изменить поведение MapperProxy .Вы можете сделать его метод invoke
чувствительным к некоторой аннотации и использовать соответствующий SqlSession
.
Хотя это довольно просто, требуется больше усилий, чтобы mybatis использовал вашу реализацию.Чтобы использовать вашу реализацию вместо существующих MapperProxy
, вам нужно изменить
MapperProxyFactory
, чтобы создать свой класс вместо MapperProxy
MapperRegistry
, чтобы использовать васMapperProxyFactory
- и
MapperScannerConfigurer
для использования MapperRegistry
, потому что все эти классы жестко запрограммированы и не настраиваются.
Так что это гораздо прощеиспользовать два отдельных MapperScannerConfigurer
, которые сканируют разные пакеты или которые настроили разные annotationClass
.