O Mybatis é compatível com Spring 4.x?
-
21-12-2019 - |
Pergunta
Eu tentei mybatis-spring 1.2.2 com mybatis 3.2.5 e Spring versão 4.1.0.Release e parece que não é compatível.
A primavera mybatis-spring 1.2.2 contém org.springframework.core.MethodParameter
classe, no entanto, getContainingClass()
não está presente.
Estou recebendo a exceção:java.lang.NoSuchMethodError: org.springframework.core.MethodParameter.getContainingClass()
Alguma ideia é que eu poderia usar Mybatis com Spring 4x?(mesmo ibatis parece não ter suporte)
Solução
Olhando no pom.xml
da Primavera MyBatis aqui Posso ver que o projeto em si depende do 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>
Então, com base nisso, eu não ficaria surpreso se recebesse uma exceção como a que você está recebendo no meu projeto e teria que dizer que "não", não é suportado.
Outras dicas
Estamos usando MyBatis v3.2.7 com Spring v4.0.6 e até agora não vimos nenhum problema.Como o Spring geralmente mantém a compatibilidade com versões anteriores, geralmente funciona.
No entanto, não tenho certeza (no momento em que este livro foi escrito) se ele é totalmente compatível com Spring v4.1.x.