Поддерживается ли Mybatis в Spring 4.x?
-
21-12-2019 - |
Вопрос
Я попробовал mybatis-spring 1.2.2 с mybatis 3.2.5 и Spring версии 4.1.0.Release, и похоже, что это не поддерживается.
mybatis-spring 1.2.2 spring содержит org.springframework.core.MethodParameter
класс, однако, getContainingClass()
нет.
Я получаю исключение:java.lang.NoSuchMethodError: org.springframework.core.MethodParameter.getContainingClass()
Есть идея, что я мог бы вообще использовать Mybatis с Spring 4x?(даже ibatis, похоже, не поддерживается)
Решение
Глядя в pom.xml
о весеннем Мибатисе здесь Я вижу, что сам проект зависит от Spring 3.2.9:
...
<spring.version>3.2.9.RELEASE</spring.version>
...
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>${spring.version}</version>
<scope>provided</scope>
</dependency>
Итак, исходя из этого, я бы не удивился, если бы получил исключение, подобное тому, которое вы получаете в моем проекте, и мне пришлось бы сказать, что "нет", это не поддерживается.
Другие советы
Мы используем MyBatis v3.2.7 с Spring v4.0.6, и до сих пор мы не видели никаких проблем.Поскольку Spring обычно поддерживает обратную совместимость, это обычно работает.
Однако я не уверен (на момент написания этой статьи), полностью ли это поддерживается в Spring v4.1.x.