【问题标题】:Does MyBatis follows JPA?MyBatis 是否遵循 JPA?
【发布时间】:2019-03-25 18:29:03
【问题描述】:

作为我的第一个 ORM,我已经使用 myBatis 工作了几个月。现在我正在尝试学习其他东西,比如 Hibernate/JPA。起初很难理解 Hibernate 和 JPA 之间的区别。经过几分钟的研究,我了解到 JPA 只是一个规范,而 Hibernate 是 JPA 的具体实现。在此视频中:link 一切都得到了很好的解释,但视频的作者将 myBatis(iBatis) 视为 JPA 实现。这是一个好方法吗? myBatis 是否遵循 JPA?有一个答案,但已经 11 岁:link2。在我的带有 myBatis 的应用程序中,我不必使用 JPA 特定的对象/注释,所以这意味着 myBatis 不遵循 JPA?

【问题讨论】:

  • 没有。 myBatis 文档在 Internet 上的任何地方都没有提到实现 JPA。 JPA API 已被广泛记录,您的使用不会使用这些类/方法,那么它怎么能呢???您提供的链接问了同样的问题(对于 iBatis,它与 myBatis 相同,因为它是简单重命名之前的原始版本)......答案是“不,绝对不是”。你能清楚到什么程度????
  • @BillyFrost 我知道这个问题有点愚蠢。我只是想确定我是否能很好地理解它,因为 JPA 的概念对我来说是新的。无论如何,谢谢你的回答。

标签: java hibernate jpa mybatis


【解决方案1】:

myBatis 没有实现 JPA。

在您提到的视频中,没有任何关于 ibatis/mybatis 是 JPA 实现的内容。 mybatis 被视为 ORM(它是)。视频中说hibernate、ibatis和toplink都有非常不同的接口,你不能随便换一个。如果有一个 API 允许使用不同的实现,那就太好了。但这并不意味着所有提到的 ORM 都实现了 JPA(作为这样的 API)。

【讨论】:

    猜你喜欢
    • 2012-08-28
    • 2012-11-06
    • 1970-01-01
    • 2016-02-12
    • 2018-03-10
    • 2018-03-31
    • 2015-06-30
    • 2013-03-13
    • 2012-02-28
    相关资源
    最近更新 更多