最近給項(xiàng)目選型的時(shí)候蜗细,選了JFinal這套框架拐迁,開始的時(shí)候有些小伙伴會(huì)不理解送丰,在Java的世界里面那么多的MVC框架缔俄,那么多的持久化框架,怎么就選了JFinal這玩意。
吐槽一下
這就不得不從比較正派的J2EE框架說起了(好吧俐载。蟹略。。我是個(gè)經(jīng)常不按照常理出牌的工程師)遏佣,一般企業(yè)應(yīng)用開發(fā)挖炬,大家都會(huì)順手拈來SSH。當(dāng)然状婶,估計(jì)現(xiàn)在還說SSH估計(jì)有點(diǎn)老了(Struts你還行么意敛。。膛虫。)空闲,現(xiàn)在比較常用的做法是Spring MVC、Hibernate/IBatics這樣的組合了走敌。但是不知道大家發(fā)現(xiàn)了沒有,很多的時(shí)候逗噩,其實(shí)我就只是需要有個(gè)簡(jiǎn)單的方式做個(gè)CRUD掉丽,我不想要那么多的實(shí)體類,看著都煩人异雁。又或者我其實(shí)就只是想要一個(gè)MVC的框架捶障,看看別人家PHP的MVC多簡(jiǎn)單啊,沒有這配置那配置的纲刀。我不需要那么多的IOC项炼,我不想新建一個(gè)控制器還得先建立一個(gè)什么接口,然后再在控制器里面實(shí)現(xiàn)它示绊,我認(rèn)為整個(gè)項(xiàng)目到處都是IOC的話簡(jiǎn)直就是對(duì)設(shè)計(jì)模式的濫用锭部。。面褐。我受不了Spring調(diào)試的時(shí)候啟動(dòng)那么慢拌禾,開發(fā)的時(shí)間很寶貴,熱部署的過程能越快越好(還有一些槽點(diǎn)展哭,不想吐了湃窍。。匪傍。用過的都懂的)
JFinal
由于種種的不滿您市,于是我發(fā)現(xiàn)了JFinal這貨。乍一看役衡,國(guó)產(chǎn)框架茵休!好吧,這年頭國(guó)產(chǎn)的東西誰敢用啊,就好比買奶粉都買國(guó)外的泽篮,國(guó)內(nèi)的都不敢買一樣盗尸。
國(guó)內(nèi)的奶粉敢不敢買我不好說,不過選框架這一點(diǎn)來說少年我還是很有把握的帽撑。JFinal這貨的下面這幾個(gè)特點(diǎn)一下子就吸引住了我:
- 極少的配置泼各,沒有Spring那些這里配一下,那里配一下的煩惱
- 對(duì)數(shù)據(jù)庫的操作做了封裝亏拉,不用我去考慮配置數(shù)據(jù)庫連接池配置的問題扣蜻,不用去搞一堆的DataModel,而且DataModel的功能比Hibernate的靈活多了及塘,有那么一些Ibatics的影子在里面的說莽使。好吧,簡(jiǎn)單粗暴的CRUD功能提供給我了
- Stateless笙僚。其實(shí)這會(huì)導(dǎo)致開發(fā)的時(shí)候有那么一些不習(xí)慣芳肌,沒有Session可以弄了。肋层。亿笤。但其實(shí)這樣是好的,這樣的話后端做負(fù)載均衡就簡(jiǎn)單很多啦栋猖。(企業(yè)應(yīng)用這些玩意一般都不怎么需要搞的這么高端净薛,和其他應(yīng)用不大應(yīng)用,一般性能最大的瓶頸是后端數(shù)據(jù)處理那里蒲拉。記得甲方大爺要求一個(gè)高峰期幾個(gè)人同時(shí)在線的應(yīng)用要做Apache的負(fù)載均衡肃拜,勸也勸不了。雌团。燃领。T_T別這樣啦。锦援。)
- 簡(jiǎn)單柿菩。這也是選用這套框架的一個(gè)很重要的原因。夠簡(jiǎn)單雨涛,我把文檔給我同事看了不到半天就玩的很熟了枢舶。大大的降低了培訓(xùn)成本。
- 開源替久。好吧凉泄,我已經(jīng)把JFinal的源碼搞下了,稍稍改動(dòng)過了蚯根,畢竟這貨有那么幾個(gè)數(shù)據(jù)庫的方法居然沒提供給我后众,搞的不得不親自動(dòng)手胀糜。當(dāng)然為了統(tǒng)一校驗(yàn)和前端界面的寫法,也把校驗(yàn)的位置稍稍做了些調(diào)整蒂誉。JFinal的源碼還是比較簡(jiǎn)單易懂的教藻,調(diào)整起來也比較好調(diào)整
總結(jié)
總的來說,JFinal這框架還是挺好用的右锨,簡(jiǎn)單小巧括堤,但是該有的基本功能還是比較齊全的,好比一把小匕首绍移,看到敵人后可以快速的給它來一下悄窃。但是對(duì)于很大型的項(xiàng)目合不合適就暫時(shí)沒辦法考究了(說不定那天碰到一個(gè)硬漢,匕首捅不動(dòng)一點(diǎn)也不奇怪蹂窖。轧抗。這人在江湖飄,各種技術(shù)都多了解下沒壞的說~)瞬测,不過少年我用到現(xiàn)在還沒發(fā)現(xiàn)它有什么不好的横媚,除了那么幾個(gè)必備的API居然沒提供之外。順帶一說月趟,基于JFinal的這個(gè)項(xiàng)目進(jìn)展的挺好的灯蝴,由于培訓(xùn)成本特別的低,其他小伙伴一下子就上手了狮斗,省了不少時(shí)間