J2EE開發(fā)主要涉及的幾種開源框架

字號:

1. JDK5.0 - JDK.
    JDK5的annotation、泛型、可變參數(shù)與autoboxing,有了之后很難再放棄。而且annotation的應(yīng)用越來越多,如果SpringSide仍然固守JDK1.4,會受到越來越多的局限。如果用戶的應(yīng)用服務(wù)器只支持JDK1.4,可使用retrotranslator的兼容方案。
    2. Spring 2 - J2EE Framework.
    暫時(shí)缺乏強(qiáng)有力競爭者的Java EE Full-Stack Framework。
    3. Hibernate 3/iBatis2/JPA - ORM Framework.
    Hibernate 種種不足,但還是的。iBatis方便舊項(xiàng)目改造或團(tuán)隊(duì)力量不強(qiáng)的時(shí)候。JPA是未來大勢所趨。
    4. Struts 1.2/ Struts 2 - MVC Framework.
    Struts 1.2的用戶數(shù)始終是最多的。Struts 2來自webwork,應(yīng)該是傳統(tǒng)模式下的mvc framework。
    5. JSP2.0 - View Template.
    因?yàn)镴SP比Veloctiy, Freemarker有好得多的IDE,如語法超級敏感,支持Jsp重構(gòu)和debug的IntelliJ IDEA。而且JSP2.0的EL可以在html中直接書寫${book.name},比 的頁面已簡潔無數(shù)倍,幾近于Velocity。而且還有Extreme Table這樣的現(xiàn)成JSP Taglib。
    6. Jarkata Commons - Commons Utils.
    Collections,BeanUtils,Configuration等等都應(yīng)該歸入JDK的Utils。
    7. XFire - Web Service.
    新一代Web Service框架, 與Spring結(jié)合,導(dǎo)出POJO為Service,還有簡化Binding上都做得不錯(cuò),是一個(gè)充滿Pragmatic味道的方案。Apache的Axis2依然無法在易用性上和它比擬
    8. Acegi - Security, RBAC ana ACL.
    一個(gè)依靠Spring迅速走紅的安全框架, 在安全方面的框子已經(jīng)搭的挺全, 不過仍然有很多地方需要擴(kuò)展才能真正使用。
    9. Eclipse BIRT 2 - Report Engine.
    它的競爭對手應(yīng)該是收費(fèi)的Crystal Report。JasperReport + IReport的組合根本沒有與它對戰(zhàn)的資格。
    因?yàn)锽IRT設(shè)計(jì)報(bào)表時(shí)類似Dreamweaver的方式,回想IReport中的做法簡直是噩夢。
    10. JBoss Rules 3 - Business Rule engine.
    Drools變身為JBossRules后已經(jīng)擁有了很好的規(guī)則語法,平民級的DSL語言映射法和基于Eclipse規(guī)則的編輯器,直追商業(yè)的ILog。
    11. JBpm - Workflow engine.
    在JBpm vs shark vs osworkflow中,我們選擇JBpm。
    12. ActiveMQ - JMS Message Driven POJO.
    ActiveMQ+Jenck是一個(gè)withdout Application Server,但效能一樣不減的MessageDrivern POJO的JMS組合方案。
    13. Quartz - Enterprise job scheduler.
    定時(shí)執(zhí)行者的主要競爭者是IBM,BEA合作搞的CommonJ, 但CommonJ只在兩家超貴的應(yīng)用服務(wù)器的最新版上存在。
    14. Compass - Search engine use Lucene .
    與Spring、Hibernate的結(jié)合,簡單的通過Annotation將Domain對象 轉(zhuǎn)為LuceneSearchable,實(shí)現(xiàn)索引的更新,可以快速實(shí)現(xiàn)基于Lucene的企業(yè)應(yīng)用搜索。
    15. Prototype.js - JavaScript and Ajax.
    Javascript編程者的小軍刀。
    16. Dojo - widgets
    雖然速度奇慢,但是最完整,支持的html widgets項(xiàng)目。
    17.ExtremeTable - JSP Table Tag Libraries.
    主要PK對象是DisplayTag,因?yàn)镋xtremeTable更易于定制樣式和二次開發(fā)。
    18.JUnit, Selenium Test tools.
    Selenium是SpringSide2強(qiáng)力推行的Web應(yīng)用功能測試,集成測試的工具。