【问题标题】:Is Mybatis supported with Spring 4.x?Spring 4.x 是否支持 Mybatis?
【发布时间】:2020-08-27 21:36:55
【问题描述】:

我用 mybatis 3.2.5 和 Spring 版本 4.1.0 尝试了 mybatis-spring 1.2.2。Release 似乎不受支持。

mybatis-spring 1.2.2 spring 包含 org.springframework.core.MethodParameter 类但是,getContainingClass() 不存在。

我遇到了异常: java.lang.NoSuchMethodError: org.springframework.core.MethodParameter.getContainingClass()

知道我可以在 Spring 4x 中使用 Mybatis 吗? (连ibatis好像都不支持)

【问题讨论】:

标签: spring spring-mvc mybatis ibatis spring-4


【解决方案1】:

查看Spring MyBatis的pom.xmlhere可以看到项目本身依赖于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>

因此,基于此,如果我遇到您在我的项目中遇到的异常,我不会感到惊讶,我不得不说“不”,它不受支持。

【讨论】:

  • 春天 orm 4.0.6 版本 (mvnrepository.com/artifact/org.springframework/spring-orm/…) 中不包含 ibatis/mybatis 的事实暗示它们在 spring 4.x 中尚不支持 ..... 它确实包含休眠, jdo 和 jpa。
  • Spring ORM 从一开始就没有支持 MyBatis 3。 MyBatis Spring,也就是问题所指的库,是MyBatis团队制作的另一个库。
【解决方案2】:

我们正在使用 MyBatis v3.2.7 和 Spring v4.0.6,到目前为止我们还没有发现任何问题。由于 Spring 通常保持向后兼容性,因此它通常可以工作。

但是,我不确定(在撰写本文时)Spring v4.1.x 是否完全支持它。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-06-19
    • 1970-01-01
    • 2019-10-26
    • 2011-07-02
    • 2019-05-13
    • 2023-03-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多