龙空技术网

javaweb轻量级框架jfinal被人诟病,看oschina社区网友如何怼回去

无极低码 2413

前言:

今天咱们对“java的框架是轻量级的嘛”都比较关切,你们都想要知道一些“java的框架是轻量级的嘛”的相关知识。那么小编也在网上收集了一些关于“java的框架是轻量级的嘛””的相关知识,希望姐妹们能喜欢,姐妹们一起来了解一下吧!

开源中国上的一篇帖子火了,我们一起吃个瓜吧哈哈,

先说jfinal是个啥:咱们先看看官网介绍

JFinal 是基于 Java 语言的极速 WEB + ORM 框架,其核心设计目标是开发迅速、代码量少、学习简单、功能强大、轻量级、易扩展、Restful。在拥有Java语言所有优势的同时再拥有ruby、python、php等动态语言的开发效率!为您节约更多时间,去陪恋人、家人和朋友 :)JFinal有如下主要特点:MVC架构,设计精巧,使用简单遵循COC原则,零配置,无xml独创Db + Record模式,灵活便利ActiveRecord支持,使数据库开发极致快速自动加载修改后的java文件,开发过程中无需重启web serverAOP支持,拦截器配置灵活,功能强大Plugin体系结构,扩展性强多视图支持,支持FreeMarker、JSP、Velocity强大的Validator后端校验功能功能齐全,拥有struts2的绝大部分功能体积小仅632K,且无第三方依赖

再看看jfinal的战绩:

2017

2016

看看官网就知道有多火了

然饿这么火的项目也被人拿出来攻击一波,当然我不建议直接评对错,就看合不合适自己啦,下面我们看一下这位哥的“热评”,其实这是一篇2013年的文章,打开后发现大家依然在怼发表以上言论的作者,我想从2013年被追到2019年该篇文章的作者应该也很奔溃,

原文如下:

标题:谈谈 jfinal 的优缺点 热

jfinal是国产优秀的web框架.jfinal短小精悍强大,易于使用.不过万事有度,省的太狠也不太好.1.框架应该尽量兼容各种场景,因为你不知道以后的场景.框架是一个持续集成和更新的过程,对公司来说这是非常重要的技术积累.(ps:多个数据库总算基本场景吧......)2.不应该整体使用map代替普通的javabean.基本是需要记忆数据库字段了,map也不方便IDE重构和手写错误的风险,也不适合对特殊字段进行注解,因为已经没有get set 方法了.3.应该拥有IOC容器.每次都是自己手动new对象,如果真想追求极致的性能,ioc容器也应该提供吧.4.需要更加完善的数据库事务,隔离级别,传播特性,支持多数据库,批量操作等,事务是非常严谨的!!!5.第三方组件兼容.框架再强,也不能完成所有的任务,需要和第三方兼容,最好是官方已经做好,spring做的比较牛啊,几乎所有的主流第三方都能和它直接兼容,就连一直嫌弃spring的jfinal也提供了一个插件......6.持续的兼容更新和维护.在天朝生存压力还是比较大的,老外则不同.例如:spring已经持续更新10年,而且版本兼容,文档等做的都比较好.我对fireworkflow很无语了.......7.商业原因.大部分屌丝程序员都是打工的,需要掌握主流的东西,例如spring,这样即使跳巢,也不会掉价.最后补充一句,我在jfinal的群里说过一个问题是sql group by 分页,jfinal的处理方式有问题,作者尽快修复下吧.我澄清几点误区:1.spring和Guice.说Guice比spring快多少,只是在启动阶段,启动完成后,bean被load到内存,运行速度是一样的2.spring的开发速度也是很快的,通过好的封装开发方法,和代码生成辅助,开发效率会比jfinal更好些.3.spring mvc 虽然使用了反射,但是是单例的,性能也不会太低.4.spring的模块化较好,我使用了11个spring的jar,5M大小.这个也不算什么重量级的东西吧.....5.如果前期没有设计好,想着以后扩展,你的下次升级API就很难兼容了......

看看网友回复:

长达几十页的评论,看完以后后背有点发凉啊,这个作者会是神马心情,不过针对jfinal还是有很多的争论的,但是我认为关键是要看适不适合自己的项目,任何项目都会有有点优缺点,而且很多框架再不了解全部机构思路的时候评论他是不是有些班门弄斧啊

标签: #java的框架是轻量级的嘛