gpt4 book ai didi

spring-boot - Mybatis 和 Spring 数据与 hibernate 结合在一起

转载 作者:行者123 更新时间:2023-12-04 14:57:41 25 4
gpt4 key购买 nike

我们有一个项目使用 Spring 数据和 hibernate 作为 ORM。现在我们正在引入我们想要使用 Mybatis 的新功能,并最终在所有项目中用 Mybatis 替换 hibernate,但同时 Mybatis 和 Hibernate 可以一起生活一段时间,直到我们完全切换。我特别关心 Mybatis 和 Hibernate 将共享连接池,即 Hikari CP(spring boot 自带的默认连接池,是的,这个项目是 Spring boot 项目!)。我不是 100% 确定数据源将在它们之间共享吗?所以问题是 Mybatis 和 Hibernate 在一起一段时间的可行性如何?

最佳答案

老实说,我从来没有一起测试过它们 - 是的,它们都单独加上 JDBC,并且一切正常 - 但是,乍一看,Spring Data JPA 与 Hibernate 和 Mybatis 没有理由不能共享同一个连接池,并且数据源。

首先,两个框架都可以访问和自动检测相同的数据源和底层连接池。

根据您的评论,您可能正在使用 Mybatis-Spring-Boot-Starter .此启动程序将使您能够自动检测已配置的数据源并向其注册正确配置的 SqlSessionFactory

当然,类似的行为也适用于 Spring Data JPA。

此外,Mybatis 和 Spring Data JPA 都不应该对底层连接池施加任何限制——连接数等。

最后是Spring Data JPA和Mybatis,这最后一个借助了配套库mybatis-spring , 都支持Spring注解驱动的事务管理能力,你只需要在你的方法中正确定义你的@Transactional注解即可。

尽管我的建议是,如果可能的话,不要在 Spring Data 存储库和 Mybatis 映射器中混合使用相同的服务方法,但我认为没有理由不这样做。

关于spring-boot - Mybatis 和 Spring 数据与 hibernate 结合在一起,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67643098/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com