说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

【开源专访】JFinal作者詹波:以极简方式实现Web项目的极速开发

HTML文档下载 WORD文档下载 PDF文档下载
JFinal是一个基于Java的极速Web开发框架,其核心设计目标是开发迅速、代码量少、学习简单、功能强大、轻量级、易扩展、Restful。本期【开源专访】我们采访了JFinal项目的作者詹波,请他来详细介绍这个项目。

JFinal是一个基于Java的极速Web开发框架,其核心设计目标是开发迅速、代码量少、学习简单、功能强大、轻量级、易扩展、Restful,在拥有Java语言所有优势的同时再拥有Ruby、Python等动态语言的开发效率。JFinal项目开发始于2011年初,并于2012年3月开源,采用对商业应用友好的Apache 2.0协议。

项目地址:https://github.com/jfinal/jfinal

本期【开源专访】我们采访了JFinal项目的作者詹波,请他来详细介绍这个项目。詹波曾任搜格信息技术有限公司Java架构师,北京信息管理科学研究所CTO,于2011年联合创办了微格网际科技有限公司,并担任旗下网校网的CTO。


CSDN:先做个自我介绍吧!

詹波:我叫詹波,英文名James,程序员一枚。爱好天文、物理、科幻、设计、编程、音乐、游戏、爬山、游泳。从小喜欢研究制造新东西,首次有用的制造是在八岁时独创的灭苍蝇手枪以及全新设计的火药玩具枪。对未知世界有着强烈的好奇心,终极理想是做一名自由发明家,财务自由后计划首先研究空间发电(非永动机)。

CSDN:JFinal是一个什么样的项目?提供了哪些功能?

詹波:JFinal是基于Java语言的极速Web + ORM框架,其核心设计目标是开发迅速、代码量少、学习简单、功能强大、轻量级、易扩展、Restful。在拥有Java语言所有优势的同时再拥有Ruby、Python、PHP等动态语言的开发效率!为开发者节约更多时间,去陪恋人、家人和朋友。

JFinal的主要特点如下:

  • MVC架构,设计精巧,使用简单;
  • 遵循COC原则,零配置,无xml;
  • ActiveRecord支持,使数据库开发极致快速;
  • 自动加载修改后的java文件,开发过程中无需重启Web server;
  • AOP支持,拦截器配置灵活,功能强大;
  • Plugin体系结构,扩展性强;
  • 多视图支持,支持FreeMarker、JSP、Velocity;
  • 强大的Validator后端校验功能;
  • 功能齐全,拥有Struts2的绝大部分功能;
  • 体积小仅180K,且无第三方依赖。

CSDN:JFinal项目是怎么诞生的?

詹波:JFinal始于2011年创业项目的实际需要。创业前曾使用Rails开发项目,被Rails的开发效率深深吸引,但无奈于Rails开发者稀有难招,以及Ruby语言固有的缺点,故决心打造JFinal,将静态语言与动态语言两者优点结合起来用于创业项目。

JFinal中的J代表Java语言,Final有最终的意思,希望JFinal能成为Java开发者的最终选择。Final还有稳固不变的意思,也因喜欢事物本质,热爱永恒的真理。

CSDN:JFinal的设计思想和理念是什么?有哪些创新点?

詹波:JFinal 遵循大道至简的设计思想。主要创新点:

  • 微内核+全方位扩展架构;
  • Db + Record 模式;
  • CPI模式;
  • ActiveRecord模式Java实现方式;
  • API引导式配置;
  • API引导Validate;
  • 采用Scanner + ClassLoader结合Jetty实现热加载;
  • 极简设计,核心代码约2000行实现Web MVC + ORM。

CSDN:介绍一下JFinal的架构?JFinal实现极速开发的原理是什么?又是如何实现的?

詹波:JFinal采用微内核全方位扩展架构,全方位是指其扩展方式在空间上的表现形式。

JFinal由Handler、Interceptor、Controller、Render、Plugin五大部分组成,以Action为参照,Handler处在扩展的最外围,Interceptor处在更贴近Action的周围,Controller承载Action处在扩展的中心,Render处于Action后端,Plugin处于在Action侧边位置。


JFinal实现极速开发主要是因为走的极简设计风格:零配置、代码量少、开发体验连续、无第三方依赖、概念最少化等等。

要实现极简设计,必须要为架构注入灵魂,系统才有自己的极简性格。设计前先在脑海中形成一整套的极简设计思想,让这套思想融入到灵魂的深处,在行动时每动一个设计念头时以此为指导思想,最后的结果就能如愿。

CSDN:讲讲项目开发过程的事情,从立项到发布首个版本之间有什么让你印象深刻的事情?

詹波:JFinal项目始于2011年3月左右,第一个版本大约两周左右开发完成,再用了一周时间将手头SSH项目切换至JFinal。

这期间最令人兴奋的事情是脑海中不断迸发出新的想法,然后立即将想法变为现实,这段时间更加确信可以通过持续地专注来激发创造力,后续工作中也验证了此法的有效性。

CSDN:开发过程中你遇到了哪些困难?是如何解决的?

詹波:开发过程最大的困难就是写代码实现,想法很快就能有,但实现起来需要花费更多时间,代码极简比仅仅实现功能要困难得多。

解决这些问题,需要对各种因素进行深入透彻分析,权衡得到最优方案。

CSDN:你每天投入在JFinal项目上的时间大概有多少?是否有其他人参与了项目贡献?

詹波:不同时期投入时间不一样,如果工作不紧张,每天两三个小时都没问题。最近几个月工作极忙,一般是在临睡前回复一下热心网友们的问题。有很多热心的网友提了很多建议,也有少部分人在Github上提交过代码。

CSDN:JFinal下一步的计划和目标是什么?

詹波:JFinal将一直坚持极简设计风格,在不断优化发展内核的同时,通过扩展的方式加强周边工具设施的建设,进一步提升开发体验。另外jfinal.com大部分构想已经完成,时间允许情况下会开发上线,jfinal.com关注开发者群体,将是完全不一样的模式。

CSDN:将JFinal开源的初衷是什么?你从开源中得到了什么?在开源方面有什么感悟?

詹波:本人是乐于助人的性格,有好东西乐于分享出来。造福于广大的工程师,自己会更快乐,更有成就感。另外开源出来也希望JFinal变得越来越好。

开源给我的感悟是做开源项目需要为其注入思想与灵魂,让其具有鲜明的个性与主张,并且要让更多的人接受并喜欢才能快速发展。乐于分享会使自己变得更快乐、幸福,帮助他人就等于帮助自己!

CSDN:你怎么看待开源以及国内的开源环境?你最希望对其他打算从事开源的开发者说的话是?

詹波:国内大部分工程师大都忙于生计,参与开源相对比较困难,国人对国产开源项目信心不足也是个问题。

建议打算从事开源的开发者在自己喜欢的方向和擅长的领域设定一个目标,尝试做个开源项目,会使你变得更充实、更快乐,以及很多意想不到的收获。

【开源专访】系列文章致力于对国内外优秀开源项目作者、团队的专访,挖掘项目背后的故事和更多技术细节,以及对项目的宣传、推广。同时,我们也希望广大开源开发者和爱好者自荐或推荐更多优秀的开源项目。欢迎留言或@CSDN研发频道。

复杂产品的响应式设计【流程篇】 使用Javassist库为Bytecode Instrumentation开发JVM Agent 内容解析创业公司Stremor推出4款API 2013中国云计算榜单之三:174家云应用服务商,繁花似锦! 盘点各大云服务提供商:麦当劳=AWS,汉堡王=? BlackBerry Jam亚洲开发者大会9月将在香港开幕 把服务器搬进来:Splashtop在中国搭建Bridging Cloud Web框架全对比第五期 新增Windows环境 前Tumblr首席开发者回忆录:一个人也能开发出好产品 测试者和开发者,为何我们不能友好地相处? 讲师秀之11:何刚谈京东的云机遇 讲师秀之10:武汉大学张焕国教授,可信计算是云计算之成败关键 【上海直播】Windows Azure+世纪互联:中国云计算“烈火烹油” 最新版Chrome浏览器推出全新语音搜索功能 惠普第二财季净利润同比下滑32% PC和服务器销售不佳 讲师秀之11:网易汪源的成长故事 PPT集萃(三):六位国内技术大牛分享巨型平台的打造与应用 聚焦全球移动市场:创新以色列 科技巨头的倾慕之地 Android版Chrome 27浏览器正式上架 机器人——数据中心的新“网管” George Chu:在雅虎打造真正的工程师文化 2013,303+家中国云计算企业的“生态系统”之梦! 高访问量Web应用跨云端迁移的原因:权限和易用性 Web应用开发者福音 Chrome 28新增丰富通知中心功能 帷千兰旭:推广渠道鱼龙混杂,开发者请小心 关于IE 10 你应该知道的6件事 Spring Framework 4.0M1发布,支持JDK 8、Java EE 7 “渣打科营编程马拉松赛”正式启动 官网同时上线 Android应该支持OpenCL的十大理由 传谷歌考虑和Facebook竞购众包地图Waze 谷歌工程师再次公布Windows漏洞 并称微软很难合作 关于使用inet控件对ftp操作的问题 一个设计方面的问题,各位高手请进!! 急急!清VB.net高手帮助.如何实现利用扬声器发生程序? 对象参数问题 如何得到文件路径 关于窗体的管理 JAVA代码操作数据库备份MYSQL? 我要将TEST01下所有的表授权有没有更简便的方法??? 数据库面试题,大家看看(给分无商量) 存储过程问题拉!帮忙看看吧! 关于ExportMap输出图片的问题? Image控件的问题? sql server 连接 请问无组建上传的详细代码解释。 怪问题! 对文件操作总报I/O error 32,请教???? 网上邻居的问题。 有一个比较基础的问题想同大家共同探讨。 急需各位高手帮忙 数据库冷备份脚本 在网页里如何检测IP地址? 调用其它程序问题! 谁能给我一个进销存的库结构啊 ▲▲▲ 有个"矩阵加括号"的通用程序,如何把它改得更好!!! "link"是什么意思? VB控件的问题 到这里放松一下吧:) 水晶报表报登录失败有什么原因? windows advanced server 2000 的雙網卡問題? SQL SERVER 在ASP 中的分页技术 socket数据传输中网络断开,如何处理? <<黑客II>>人物分析搞怪版 简单问题请教!!急!! 请问MSSQLServer7可以直接通过COPY数据库达到备份的目的吗? 各位大鸟们:帮兄弟拿个主意? 怎样改变webform的caption阿 怎样在程序中实现关闭或开启触发器? 如何把CListCtrl的滚动条移到最底端? TPageControl怎么动态生成一个TabSheet? vb6的工具菜单下有一个添加控件集工具,可以添加按钮列表框,树状视图列表视图拆分条,移动钮列表框3种,请问还可以找到更多的控件集吗? 请问为何cup周围有两个电容鼓起来? 上传文件时,出现Access to the path "c:\inetpub\wwwroot\upload\abcrar" is denied. TPageControl怎么动态生成一个TabSheet? treeview控件,如何能删除被选的节点的相邻两层?? 图像缩略图的问题,在线等待,急,我就只剩这些分了,倾囊相送,不要嫌少,谢谢了 指针,变量声明的问题,急,在线等待 大家推荐一款路由器,采用后100分相送! 一个字符串问题 我在project里面加入lib文件后,连接时报“linker error:segment _text exceeds 64k”,该如何解决。 一个字符串问题 怎样在网页上使用activex控件 如果没有任何保护措施,老虎将在何时灭绝?A 据专家估计,将在2022年灭绝B 据专家估计,将在2032年灭绝C 据专家估计,将在2042年灭绝 若将时钟调慢10min,则时钟转过的角度为?分针转过的角度为?急吖! ( )山( )野 填近义词 以党为主体做某事的意义 营养液广告词:口蜜腹健,是什么. 填近义词 ()山()野 填反义词()上()下求好心人,谢谢了~! 為什么男人是女人的依靠,為什么女人不可以是男人的依靠?為什么男人娶女人囬傢,而不是女人娶男人囬傢?為什么男人負勒女人,教負心漢;女人揹叛勒男人叫濫貨? 1.依据自己的生活经历和情感体验,仿照下面的句式再写几句话.童年的趣味,在百草园短短的泥墙根一带;童年的趣味,在夏夜里美女蛇的生气传说;童年的趣味,在---------------------------;童年的 教材解析135页关于线性规划题,9题,见补充我的疑问是:解析说函数与x轴有两交点,则b^2-4a^2>0,那万一系数a<0呢? 生男生女到底取决于谁?是女人还是男人? 我不了解 求三角形的面积 目前,已有97个世贸组织成员承认中国的完全市场经济地位.而美国、日本、欧盟等发达国家均拒绝承认中国的市场经济地位,并以完全市场经济地位来压制中国,这一情况表明( )A.经济全球 下面广告有别字,把这些别字改对,说明是哪种商品做的广告百衣百顺、口蜜腹健、一臭万年、随心所浴 数学中的应用题是否是中国特有的 新经济自由主义和极端自由经济主义的名词解释. 营养液广告词把口蜜腹剑写成口蜜腹健,这样打广告的利弊何在 两个通风管道相交一个圆形面,圆形怎么算圆圈那怎么计算工程量,单独标出700,600的地方是通风管道的直径吗? 降压型DC-DC电源转换器怎样提高带负载能力模电课设要求的,12转5伏,用555做的,现在带上5Ω电阻后电压降至1.7伏,是为什么呢?因为电流过大吗?怎么解决呢? 方转圆计算法大神们帮帮忙 线性规划的题!谁会?第8题 知道三角形六个边角元素的其中哪几个可以确定一个三角形? 提高我国国民经济的整体素质 什么是通风除尘 什么是三角形6个边、角元素今天做一道数学判断题,“三角形6个边、角元素,有5个元素分别相等的两个三角形是否全等”不懂是哪“6个边、角元素”谁能告诉我? 为什么细胞是圆的大神们帮帮忙 三班两倒我下午17:30~次早7:30上班(夜班),早上回来休息了一天,然后的班次怎样的呢?请解惑. 在Rt三角形中共有几个元素 微积分 分已经不多,但这是我最后的一点,希望把解题详细过程写出来.238页:78题:试证明曲线y=x^3在任何点(a,a^3)处的切线一定与该曲线再次相交,交点处的斜率是在点(a,a^3)处斜率的4倍.242 中华人民共和国浙江省温州市苍南县钱库镇第二高级中学现在是什么高?答省2级普高给分 y=sinx+3/cosx-4求函数的值域提示:先把分母乘到左边,然后整理为sin(x+θ)=f(y) 然后 f(y)的绝对值小于等于一,解出不等式.计算量可能用点大,只需要把函数整理为sin(x+θ)=f(y) 堂皇的近义词是?不要富丽堂皇的近义词 我国管辖面积最大的省是哪个? 三角形的6要素是什么 《大堰河-我的保姆》的意象 实行分配制度的意义 谁把谁的明媚尽收眼底意思 含有l,y,y或y,u,y,u的英文单词就是同时含有l、y、u其中两个或三个字母的英文单词 近义词(不要瞎答)骄傲 立即 缘故 精美 为什么不会有人能和你感同身受?好伤心…… 到底是方的还是圆的? 瞎的近义词[不要反义词】 物理隔离法中是不是所有整体受到的力每个个体都会受到请不要复制百科= = 高中物理受力分析什么时候可以用整体法?我指的是满足什... 瞎的近义词 批注的注意思是什么 整体法做受力分析的题目该如何做? 瞎想的近义词缩写句子1、就在我们几乎将这件事淡忘的时候,儿子收到一个写着他的名字并称他为“先生”的大信封.2、蒂姆出于高能物理研究的需要发明了万维网. 一个长方形被分成了四个不同的小三角形,其中①号三角形的面积是6平方厘米,②号三角形的面积是长方形的6分之1.长方形的面积是多少平方厘米? 三角形中有哪些元素? 哪位朋友能帮忙找下关于《雨》或《雪》《阳光》《青春》《友谊》《回忆》的文章.要求字数1000字左右,看到的朋友帮下忙,急用… 国家干预主义取代经济自由主义能否消除经济危机 三角形有几要素 想起了( )作文 长方形ADEF的面积是16平方厘米,三角形ADB的面积是3平方厘米,三角形ACF的面积是4平方厘米求三角形ABC的面 我们学过三角形的组成,元素有哪些 求三角形面积 什么是经济自由主义,什么是国家干预主义,它们对公共政策有何影响? 《大堰河 我的保姆》中作者为什么说“我看到雪使我想到你”,而不是看到春雨或是听到秋风萧瑟的声音 关于三角形面积 新消法引入\"举证倒置\" 经营者需前3季度国内渔业产值达5362亿元 上海自贸试验区营造“宽进严管”的营商谷歌雅虎数据遭美国国安局窃取 美媒称菲律宾议员“港人生命值钱说”激起香港俄罗斯核武部队大规模战略演习 抗衡北台湾花莲发生6.7级地震 杭州等多地医生举报官员公款出游 出门戴钢盔执擀美国务卿将访欧洲中东八国 重申与沙特俄律师称斯诺登在俄找到工作 新工作与\"免费\"医疗让俄罗斯进退两难 仅多航班遭炸弹威胁嫌疑人落网 因向父亲万圣节网友微博晒疯狂造型 惊现金正恩巴基斯坦警方在卡拉奇逮捕97名犯罪嫌北京数十村民阻拦农田被承包种树时遭打绍兴印染温州电镀两个“污染大户”转型斯诺登最新照:在莫斯科乘游览船 未戴调查指斯诺登最可能在俄最流行社交网站长沙飞杭州航班受炸弹威胁备降南昌医生举报副县长公款旅游 开发商10万第九届杭州市十大道德模范(平民英雄)大宝嫉妒二宝往辅食撒尿被打,随后举动汽车售后纠纷该怎么办?柴静:揭开雾霾真相 (刷爆朋友圈)涨跌停板在期货中的追击护城河已被填平,传统服装业的明天在哪7月31日白银或将单月最大跌幅操作注#创业帮帮忙#新妈妈20万元积蓄开一移动互联网理财是大势所趋庄帅出书记第3回:参与我出书的两个关与09年惊人相似 难道未来的行情会这追忆评书表演艺术家袁阔成友商如此重伤竞争对手! 粉丝们还对你这些年,两会新闻出版界委员都有谁?拍照领域成为噱头? 索尼此次能否抓住广电“国网”:整合工作开始动真格蒋介石一手导演了孙立人的悲惨结局天线姿态测试仪背后的秘密...越战美国女星赤裸上身探访南越?新闻出版广电总局表彰先进了!看看榜上不会开挖机的司机不是好厨师!一本影响世界历史进程的环保之书
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘