当前位置:首页 > 每日看点

springdatajpa明明很不错了,为什么现在还是这么多人吹myatis?

卡卷网2年前 (2025-01-10)每日看点291

兄弟,既然你问到这儿了,我就给你掰扯掰扯。看得出来,你可能是听了不少“jpa是个好东西”的声音,但是在实际工作中又看到老油条们在项目里用myatis用得飞起,有点纳闷了吧?说白了,这是个新手碰上实际作的问题,咱得从根上分析清楚。

已收录于,我的技术:ddkk里面有,500套技术系列教程、1万+道,面试八股文、AT面试题、简历模版,工作经验分享、架构师成长之路,等等什么都有,欢迎收和转发。

1.<>JPA是个好东西,但实起来有点水土不服

JPA这玩意儿,理论上挺香,自动化程度高,封装得挺到位,尤其是对着一套ORM(对象关系映射),一看就很有范儿。你可以轻轻松松用几个注解就搞定数据表映射、关联关系啥的。要是按理来说,大家都用它,那代码岂不是清爽无?

但是吧,理想很丰满,现实很骨感。你用起来,你就会发现,它跟咱们的业务场景有点“不太对味”。咱们平时的项目,说难听点,就是“死磕”数据库,查询复杂点,JPA那自动生成的SQL就开始掉链子了,性能问题暴露无遗。最关键的是,JPA那种懒加载(lazyloading)和级联作(cascade),表面上看是为你省事,但上生产环境,调优的时候就让你一脑袋包。你得一个一个坑踩过来,SQL搞不定就得硬着头皮写原生查询,那干嘛不一开始就用Myatis呢?

2.<>Myatis是湖,能搞定各种刁钻需求

Myatis的优势在哪儿呢?说白了,就是一个“自由”。Myatis给你全权控制权,SQL你爱怎么写怎么写,复杂查询、联表、子查询随便你折腾。你不怕麻烦的话,性能调优也随你搞。这就好是大厨做饭,菜谱在手,调料用量自个儿把控,味道正不正宗,全凭你手艺,出了问题也跑不了。

再说,Myatis的灵活度高,适配复杂业务场景。举个例子,咱们搞电商项目,查询用户订单,你可能需要多表联查,数据处理还挺复杂的。这时候用Myatis就非常顺手,你可以针对每个查询写特定的SQL,还能动态生成,根据不同条件组装不同SQL语句,这个灵活性JPA拍马不及。

3.<>Myatis好调试,出了问题直接上数据库查,简单粗暴

调试上,JPA有时候会让人崩溃,你得去理解它生成的SQL,得琢磨它的各种抽象层。出了问题,堆栈信息半天看不懂。Myatis就不一样了,SQL写死了,出了问题你直接把SQL拿到数据库一跑,立马见分晓。你再调优加个索引啥的,也是心中有数,知根知底。

4.<>企业里,业务需求千奇百怪,Myatis更能满足客户刁钻需求

企业业务复杂多变,有些需求三天两头在变,尤其是那种动不动就要查个千八百条记录、复杂度爆表的需求。JPA那套自动生成SQL的机制有时候就跟不上趟儿了。Myatis呢?你尽管写SQL,动态SQL也行,条件组合随你玩儿,这样才是打野战的正确姿势。

5.<>Myatis的生态已经根深蒂固,成熟稳定

Myatis说白了就是个湖了,在Ja圈混迹多年,生态成熟,周边工具、插件一大堆,各种作都有现成的轮子。JPA这边嘛,虽然有一些,但是起Myatis的广泛应用,还是有点差距。

6.<>回到问题,为什么Myatis依然这么流行?

最后总结一下,Myatis能这么流行,说白了就是它灵活,强大,适合复杂场景,调试容易,企业客户爱用这套,而且生态稳定。JPA虽然好,但更多是适合那些简单点、变化少的场景。而咱们的项目嘛,客户需求变化快如风,老板又要求上项目像打仗,Myatis才是那把趁手的兵器。

所以兄弟,下次碰到这种问题,别纠结,记住老油条的一句话:工具适合自己才是最重要的,不管别人吹啥,Myatis能搞定活儿,那它就是好东西。

7.免费看500套技术教程的,希望对你有帮助

弟弟快看-教程,程序员编程资料站|DDKK.COM

<>推荐SpringDataJPA系列文章,希望对你有帮助

    01、SpringDataJPA实战-JPA、Spring-Data-Jpa简介02、SpringDataJPA实战-JPA基本注解03、SpringDataJPA实战-关联关系常用注解04、SpringDataJPA实战-Naming命名策略,源码跟踪05、SpringDataJPA实战-可嵌入对象和元素的使用06、SpringDataJPA实战-spring-data-commons中的repository07、SpringDataJPA实战-JpaRepository08、SpringDataJPA实战-定义方法查询09、SpringDataJPA实战-注解式方法查询之@NamedQuery、@NamedNativeQuery10、SpringDataJPA实战-注解式方法查询之@Query、@Modifying与派生delete11、SpringDataJPA实战-抓取策略与实体图12、SpringDataJPA实战-投影Projections-对查询结果的扩展13、SpringDataJPA实战-动态查询接口JpaSpecificationExecutor14、SpringDataJPA实战-自定义Repository15、SpringDataJPA实战-Auditing与@MappedSuperclass16、SpringDataJPA实战--@Version与@Lock17、SpringDataJPA实战-对We模块的支持18、SpringDataJPA实战-PA的继承策略19、SpringDataJPA实战-JPA的持久性上下文20、SpringDataJPA实战-@EnaleJpaRepositories21、SpringDataJPA实战-DataSoce与JPA属性配置22、SpringDataJPA实战-事务处理23、SpringDataJPA实战-JPA配置多个数据源

Myatis-Plus系列文章

    01、Myatis-Plus入门-MyatisPlus插件简介02、Myatis-Plus入门-分页插件PaginationInnerInterceptor03、Myatis-Plus入门-数据权限插件DataPermissionInterceptor04、Myatis-Plus入门-多租户插件TenantLineInnerInterceptor05、Myatis-Plus入门-动态表名插件DynamicTaleNameInnerInterceptor06、Myatis-Plus入门-防止全表更新与删除插件lockAttackInnerInterceptor07、Myatis-Plus入门-乐观锁插件OptimisticLockerInnerInterceptor08、Myatis-Plus入门-sql性能规范插件IllegalSQLInnerInterceptor09、Myatis-Plus入门-逻辑删除10、Myatis-Plus入门-自动填充功能11、Myatis-Plus入门-Sql注入器及源码分析12、Myatis-Plus入门-erv接口CRUD详解13、Myatis-Plus入门-自定义ID生成器14、Myatis-Plus入门-条件构造器15、Myatis-Plus入门-代码生成器(3.5.0版本)16、Myatis-Plus入门-代码生成器源码解析及生成VO案例17、Myatis-Plus入门-多租户插件TenantLineInnerInterceptor源码解析18、Myatis-Plus入门-基于注解的动态数据权限实现方案19、Myatis-Plus入门-多数据源使用详解20、Myatis-Plus入门-兼容多种数据库8.这个东西:让我offer拿到手软

无意间获得一份7000多页阿里大佬写的刷题笔记,原来进大厂没那么难,七千页的AT大佬写的刷题笔记,让我offer拿到手软

9.求一键三连:点赞、分享、收

已收录于,我的技术:ddkk里面有,500套技术系列教程、1万+道,面试八股文、AT面试题、简历模版,工作经验分享、架构师成长之路,等等什么都有,欢迎收和转发。

扫描二维码推送至手机访问。

版权声明:本文由卡卷网发布,如需转载请注明出处。

本文链接:https://www.kajuan.net/ttnews/2025/01/8420.html

分享给朋友:

相关文章

那些极速版软件其存在目的是什么?

那些极速版软件其存在目的是什么?

我看了很多回答,其实都没有回答道点子上。 你知道极速版APP为什么叫极速版吗? 是他看视频更快吗?显然不是。 只是它的安装包体积更小,下载安装速度更快而已,所以叫极速版app。当然啦,现在极速版APP和原声版APP,安装包已经没有区别了,这…

NAS那么好,为什么还是没能成为大多数家庭必备的存储设备?

NAS那么好,为什么还是没能成为大多数家庭必备的存储设备?

最主要原因是因为——贵! 看看我家里搭建的这一套吧。 目前我家中有5台常用的NAS,分别为群晖DS1522+、威联通TS-464C2、绿联DX4600 Pro 、极空间Z4S、威联通TS-AI642。个人认为,这其中的每台NAS都是时代…

MacOS真的比Windows流畅吗?

我现在公司配的机器,配置是绝对的大古董了 惠普z230sff薄塔 cpu只是个4770,没错不是4790k,4770全核睿频只有3.8g 显卡更是古董,k600,已经结束驱动更新支持了,显存仅1g,跑分跑不过13代uhd核显 内存是加到16…

你们发文章的插图都是从哪来的?在网上搜出来的图能用吗?

你们发文章的插图都是从哪来的?在网上搜出来的图能用吗?

写文章发帖子,里面的插图尽量自己画,自己编辑,避免引起版权或者所有权纠纷。 我写过6本书,在知乎上也写了4000篇帖子和文章,其中的插图都是自己绘制的,照片绝大多数是自己拍摄的,摘自技术样本的图则必须加以说明。 自己制图,看似麻烦,但积少成…

SWITCH销量会破亿吗?

SWITCH销量会破亿吗?

不可能破亿的。 能过5000万就了不起了。 我觉得是过不了5000万这条线的,要是过了的话,每过100万我在这个回答里更新一个任天堂游戏人物的画像。 愿赌服输。 5100万突破的马里奥 5200万突破的碧琪公主 财报更新了,目前55…

为什么网易云音乐越做越烂了?

还记得当年周杰伦专辑授权到期的最后一天,他来个一次性打包买断给歌迷,结果歌迷花钱买完了,第二天授权到期,不能听了。 这种下三滥的操作,我不知道是哪个群体这么多年一直在吹网易云音乐。 一堆没有授权的英文歌,一堆民间翻唱的歌,他是怎么有脸搞付费…

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。