感谢neko提供的素材,非常感谢,让我知晓了这么美妙的框架。

更多精彩文章。

《微服务不是全部,只是特定领域的子集》

《“分库分表" ?选型和流程要慎重,否则会失控》

这么多监控组件,总有一款适合你

《使用Netty,我们到底在开发些什么?》

《这可能是最中肯的Redis规范了》

《程序员画像,十年沉浮》

最有用系列:

《Linux生产环境上,最常用的一套“vim“技巧》

《Linux生产环境上,最常用的一套“Sed“技巧》

《Linux生产环境上,最常用的一套“AWK“技巧》

脱离任何使用场景的比较,都是傻x行为。但我还是要当一回傻x,就当给新版本jfinal献礼了。

有一个项目,夹缝里求生存 。年年获取oschina最佳开源项目,那就是jfinAl。

Spring,这个老牌的框架,迎来了危机。古人云,柔弱胜刚强,诚不我欺也。

来看看集大成的spring模块,想要攻击它,有没有一种无从下手的感觉?

奇迹如期而至。今天的挑战者,就是java界的后起之秀,如语言界PHP一般的——JFinal框架!连续蝉联多年oschina热门开源框架的冠军宝座。

让我们一起来见证这创世的一刻。

一、数据方面

spring可以轻松接入mybatis、hibernate、Spring JDBCTemplate等等,想加个redis或者kafka、rocketmq啥的,有现成组件。

真是——太!简!单!了!

But!

这都是低能儿玩的,高阶研发表示不悦。

jfinal在Orm方面完胜,据说高阶研发都是这么玩的。还不赶紧提升一下逼格?

这是jfinal社区对其他组件的评价:

mybatis?没有优势的战五渣。
hibernate?不好用的渣。
redis?您凑合着用,不行就手撸。
kafka?请您徒手撸。
rocketmq?请您徒手撸。

虽然手都要撸秃噜皮了,但还是快乐着,大家都有活儿干了,美滋滋~

作者都发话了。

这才是鄙视链的顶端。我TM反手就点了向下的赞。


那下面让我们来见识一下,压倒mybatis,秒杀hibernate的jfinal查询。

先点个分页吧,毕竟这个更能体现逼格


这是什么风骚的传参方式,select部分还被扯了出来,sql语句不会觉得疼吗?

dao.paginate(1, 10, "select *", "from girl where age > ? and weight < ?", 18, 50);

一定是姿势不对,用左手开文档了,这次换右手!

String from = "from girl where age > ?";String totalRowSql = "select count(*) " + from;String findSql = "select * " + from + " order by age";dao.paginateByFullSql(1, 10, totalRowSql, findSql, 18);

唔,好·~嗷~——!!这风格,有种青春的感觉,想起初学java时的hibernate……

Spring!我鄙视你!

二、用户群

社区融洽,学习氛围极强,用户都是深入骨髓的喜欢这个社区。和v2ex一样,意见相左的都被干掉了,所以社区很纯洁。

不信,看下面这个暴走哥哥的评论。

还有痛苦流涕的声音有没有,我感动的裤子都尿了。

可见jfinal的用户,已经超越了忠诚乃至狂热。再瞧spring的门庭冷落,群里有几人需要喊出【spring天下第一,java是天】的口号?不是你不敢,是Spring不配!

将来,如果得到了一份offer,很可能要感谢JFinal,没有它哪儿有这么多项目需要改成spring boot呢

这尼玛,让这种评论挂在热门上好久才被删帖,维护者的失职啊?

三、宣战布告

从前有个大妈,一口气向11国宣战,她叫慈禧。
现在有个框架,一口气向一堆框架pk,他叫JFinal

Spring除了代码,什么都没有

SpringBoot就是个壳而已

FreeMarker,你的路线走偏了

Hibernate:把你放上来是你的荣幸


这…连我这喷子都不好意思再比较mybatis和hibernate了,合着都是渣啊。。。

spring:【我IOC,AOP】
JFinal:【你代码多】

spring boot:【我构建简单,启动快】
JFinal:【你代码多】

freemarker:【我可以分层,我可以提升开发效率】
JFinal:【你代码多】

hibernate:【我面向对象查询,单表crud强无敌,可以兼容数据库迁移】
JFinal:【你代码多】

这就引申出一个问题:人类的本质是什么?今年是2019年吗?

现在的带宽传716KB和19MB有区别吗?

代码行数少代码质量就高吗?

太监就一定比其他掌门工夫高吗?(这可能还真是)

牺牲常用功能由此获得的轻量,是廉价的。

同时也是黑客的!

四、问题处理

spring的问题一套baidu,google,stackoverflow基本解决,强烈吐槽啊,完全没有门槛,40多的老猿怕要被拍在沙滩了。

再看jfinal,出点问题先捞源码,想要解决全靠祖先保佑,大大提升了老程序员的价值和生存空间。

年龄越大的,越应该拥护jfinal。

五、生态圈

spring的生态圈过于庞大,如spring boot,spring cloud,spring data,spring batch,spring security等等,可以降低开发难度,提升开发效率。这对技术精深的老研发不友好的,杂而不纯。

而JFinal的生态完全由作者一个人维护,保证了其绝对的纯洁性。这世间,没有什么比纯洁和理想更能让人动容的了。

End

猜测可能的几个评论,先回答了:

A: 你又没用过JFinal,凭什么这么说人家

B: 看了文档还敢用吗?

A:有本事自己写一个,不写没资格说

B:我家冰箱制冷不好,还要做个冰箱再说吗?

A:专门注册了来骂你的。

B:我谢谢您吆。您可以狂点下面的广告来报复我,我会被判作弊的。

所以评论就不开了,没时间看。不开评论和你删评论一个效果,还TM简洁省劲。

但是,JfiNal。你删得了我的评论,删得了网友中性的对比。你删得了这个帖子么?

虚伪的家伙。

说明:所以,这仅是一个因为无下限删帖而引发的吐槽。开源本来就是值得尊敬的事情。代码无高低贵贱,用啥还不是为了混口饭吃。

如人饮水,冷暖自知。

快来,看看spring有多烂-来自jfinaL的嘲笑相关推荐

  1. 快来试试 Spring Boot 应用可视化监控,一目了然!

    点击上方蓝色"方志朋",选择"设为星标"回复"666"获取独家整理的学习资料! 作者:你照亮了我的世界 blog.csdn.net/weix ...

  2. 你写的代码扩展性高吗?快试试用Spring注入方式来解耦代码!

    点击关注公众号,实用技术文章及时了解 来源:blog.csdn.net/qq_38050259/article/ details/113414419 目的:对比传统方式和 Spring注入方式创建对象 ...

  3. 被各种注解搞晕了?那快来看看Spring Bean注解详解!

    前言 本篇博客中,我们将会讨论用于声明不同类型 Beans 的几种最常用的 Spring Bean 注解. 众所周知,Spring 容器中有许多配置 Bean 的方法,我们既可以通过 XML 配置,也 ...

  4. 好长,越往下翻越喜欢!

    关于我:小姐姐味道  (xjjdog),个人号,非机构运营.掘金.知乎.头条.csdn等多平台同名,专注原创.个人微信xjjdog0,欢迎进一步交流. 趁着脑子不转了,下苦力整理一波. 朝踏日归来,暮 ...

  5. Java程序员:真是会服了面试官,不就要个40k嘛硬是把Spring问烂

    你们知道今年工作有多难找吗?反正我是累了,面试官已经把Spring给问烂了,问!烂!了! 先随便上十道面试题你们感受一下: 使 用 Spring 框 架 的 好 处 是 什 么 解 释 AOP 模 块 ...

  6. Spring在Java领域的统治地位:86% 的Java开发者依赖它!

    每一个程序猿都有自己的开发习惯,喜欢用哪个工具喜欢用哪种框架,但不可否认的是,自从2003年被发布之后,Spring框架已经是大多数JAVA开发人员的首选! 就在去年9月,VMWare发布过一个202 ...

  7. 比较Spring AOP与AspectJ

    本文翻译自博客Comparing Spring AOP and AspectJ 介绍 如今有多个可用的AOP库,这些组件需要回答一系列的问题: 是否与我现有的应用兼容? 我在哪实现AOP? 集成到我的 ...

  8. Spring Boot 2.0选择HikariCP作为默认数据库连接池的五大理由

    转载自公众号:工匠小猪猪的技术世界 摘要: 本文非原创,是「工匠小猪猪的技术世界」搜集了一些HikariCP相关的资料整理给大家的介绍,主要讲解了为什么sb2选择了HikariCP以及HikariCP ...

  9. spring boot web项目_阿里技术专家带你使用Spring框架快速搭建Web工程项目

    点击上方 "程序员小乐"关注, 星标或置顶一起成长 第一时间与你相约 每日英文 We all have a past. It's how you deal with it. 每个人 ...

最新文章

  1. 前端开发工程师面试题之综合篇
  2. 功能最强大的代码生成器——EasyCode
  3. codeforces 401D. Roman and Numbers 数位dp
  4. 用 WEKA 进行数据挖掘,第 3 部分: 最近邻和服务器端库
  5. windows 7平台 使用 感言
  6. unittest单元测试框架—加载测试用例的3种方法以及测试报告存储管理
  7. Java集合之LinkedHashMap源码分析
  8. Java业务面考什么_Java程序员面试技巧分享,面考官考查JAVA程序员常用的技术有哪些?...
  9. linux统计某个字符个数,Linux统计一个文件中特定字符个数的方法
  10. 免校准的电量计量芯片_应物联网而生:合力为HLW8012系列免校准电能计量芯片-测试测量-与非网...
  11. Activiti7 表介绍
  12. Linux 网络基础篇
  13. websocket实现聊天室(一)
  14. pyinstaller spec文件详解
  15. stm32语音识别文字显示_『免费开源』基于STM32的之语音识别
  16. 亲测解决知网下载的正版国家标准打开不了
  17. 6-6 使用函数判断完全平方数 (10 分)(C语言版)
  18. 幂级数和函数经典例题_函数项级数和幂级数 习题课
  19. 人工智能实践教程(一)
  20. 【C语言】运算符优先级

热门文章

  1. 基于多项式螺旋曲线的轨迹优化
  2. linux下qt使用谷歌拼音,GitHub - aron566/google_pinyinim: 谷歌拼音输入法移植至QT,纯widget实现...
  3. android usb ftdi,android-Nexus7 USB主机FTDI设备未检测到
  4. CE-扫描扫雷中雷区地址
  5. android里qq登录界面,Android仿QQ登陆窗口实现原理
  6. 天南地北双飞客,老翅几回寒暑!
  7. 苹果又一波奇葩Bug来袭:小心你的备忘录被清空!
  8. 网络小贷风控有哪些数据接口?
  9. 异地IT驻场外包人员如何管理?
  10. Leecode159:至多包含两个不同字符的最长子串