当前位置:首页 > 每日看点 > 正文内容

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

卡卷网10个月前 (01-10)每日看点166

兄弟,既然你问到这儿了,我就给你掰扯掰扯。看得出来,你可能是听了不少“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

分享给朋友:

相关文章

为何 Linus 一个人就能写出这么强的系统,中国却做不出来?

为何 Linus 一个人就能写出这么强的系统,中国却做不出来?

我给你举个真实的例子。。有一个人叫高伟东,在哈尔滨工作。在2012年做了一个APP。使用词根词缀背单词。名字叫:词根词缀词典这个人编辑了2300余条词根,给10万多条单词建立了词根索引,整理了50多万条的单词记忆方法,包括新版本的诸多新功能...

提升自己最快的方式是什么?

提升自己最快的方式是什么?

1.稻盛和夫说过:“改变自己最快的方法就是做自己害怕的事,不敢做的事,认为自己做不到,觉得不可能的事。如果在自己的舒适区待久了,就会丧失斗志,如果想快速的改变,可以坚持去做一些对自己有益的事。2.早睡早起,坚持运动保持旺盛的精力,人生拼到最...

报名的网课分期付款怎么退?

你在你分期付款的订单下面有客服电话,直接打电话描述一下你的问题,你可以告诉他你是被恶意绑定的,在不了解有退学条件这一说的情况下报的课程,可能遇到消费者诈骗了,不承认有退学金,说是霸王条款,诈骗消费者,你若分期了先把自动续费关了,别让自己个人...

为什么有人觉得华为mate60只值2000?

为什么有人觉得华为mate60只值2000?

你以为买Mate60的人真的傻?真的那么爱国?国庆前,我家那傻子加价800多买了一台Mate60,当时还被我骂他是傻子。可是他说一回到公司就被老板同事朋友看到,拿去反复查看,都在惊叹他这么快就买到新机。跟亲戚朋友聚会,别人一看就知道他买的是...

夸克浏览器受欢迎的原因是什么?

夸克浏览器受欢迎的原因是什么?

这是可以说的嘛~哈哈,它比较吸引我的几点是:安全无广、页面简洁、功能丰富、反应速度快......首页页面支持自定义,喜欢什么样子都可以自己调整,没有花里胡哨的各种资讯推送,热搜日报整理归纳好,想看再点开查看,看着舒适度直接拉满!实用日常工具...

如何看待台积电,三星相继停供大陆7nm及更先进芯片?

在这个事出来之前,我就看到过一个说法,两家Foundry可以在中东建厂,让中东的Fab去干“脏活”。本质上是国内企业搞几个中东的代理人,装作是中东的初创Fabless企业去下单,人家Foundry大概率睁一只眼闭一只眼,只管数钱。然而,紧接...

发表评论

访客

看不清,换一张

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