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

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

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

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

分享给朋友:

相关文章

4000以下的手机有没有推荐的啊?

4000以下的手机有没有推荐的啊?

可以选择标准版的旗舰机型:vivo X100s、一加12、OPPO Find X7、小米14、iQOO 12;也可以选外观时尚的自拍影像机型:vivo S19 Pro、realme GT 5 Pro、荣耀 200Pro、小米 Civi 4...

支付宝碰一碰市场如何?

支付宝碰一碰市场如何?

今年,支付宝又整了新的大活,即无须扫码即能完成支付操作的“支付宝碰一碰”正式登场。下面就来给大家分析分析,这是个什么情况,为什么都在说能赚钱。支付宝碰一下怎么赚钱的?都有谁能赚到这份钱?1.支付宝碰一下原理支付宝碰一下的本质依旧是“条码支付...

自媒体如何快速起步?

自媒体如何快速起步?

有两种经验,可供参考。第一种是:现象级的爆火、爆款,这种情况捞到钱,实现财务自由的人并不多,但确实存在。只不过非要说清楚为什么这个账号可以火、可以短时间内赚到普通人一辈子赚不到的钱,他们自己也不一定能说清楚,因为赶上了风口(内外部情况)。举...

你捡过最大的漏是什么?

你捡过最大的漏是什么?

买了套二手房,软磨硬泡便宜了1个w 结果就是一屋子狼藉 原业主说反正你们要重新装修 就不收拾了 等完了你们一起收拾掉吧 落了很多柜子 电器是啥的 今天打开卧室柜子一看…现在是去存钱的路上有朋友知道这样存钱银行会给发大米跟油吗...

为什么扫码支付在中国流行,在发达国家被排斥?

因为这是一种落后的技术。卖菜的大爷花5毛钱就可以打印出一张二维码来接受付款。你觉着这种先进么?跟先进完全不沾边的。正是因为不先进,所以才能流行。卖菜大爷用不起一台先进的、具有NFC感应功能的、还能刷各种银行卡的收款机。这就是现实。发达国家,...

中国芯片产量达1399亿颗,这意味着什么?

美国并不是没有明白人,只是特朗普不懂芯片产业的情况,冒冒失失在ZZ正确下,开启了对中国芯片的掐脖子,结果没掐死,反而让人练出了铁肺。芯片是所有科技产业的上游,美国原本在上游呆得很舒服,靠英伟达、AMD、德州仪器、高通等这些几十年霸主地位的公...

发表评论

访客

看不清,换一张

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