當(dāng)前位置:工程項(xiàng)目OA系統(tǒng) > 泛普服務(wù)體系 > 泛普博客
Java EE開(kāi)發(fā)三劍客現(xiàn)狀和發(fā)展淺析
申請(qǐng)免費(fèi)試用、咨詢電話:400-8352-114
來(lái)源:泛普軟件JSF 2.0
盡管 Java 在展示層框架上競(jìng)爭(zhēng)的非常激烈,但 JSF 仍然固守著自己的領(lǐng)地。雖然有很多關(guān)于 JSF 的易用性和健壯性的質(zhì)疑聲,但 JSF2.0 就是為正面解決這些問(wèn)題而提出來(lái)的,它的易用,創(chuàng)新以及可擴(kuò)展的特性包括:
JSF 正式將 Facelets 作為視圖技術(shù)。也許你不熟悉 Facelets ,它也是一個(gè)與 JSF 結(jié)合默契的開(kāi)源視圖技術(shù)。因此,與 JSP 不同的是 Facelets 更適合 JSF 的組件模型以及生命周期的概念。當(dāng)然,也許 Facelets 最強(qiáng)大的特性就是在用 mark-up 來(lái)代替 java 代碼創(chuàng)建自定義的組件。創(chuàng)建自定義組件的復(fù)雜度也許是開(kāi)發(fā)者對(duì) JSF 抱怨最多的地方了。
JSF2.0 通過(guò)使用標(biāo)簽為 Java EE 5 提供了基于 annotation 驅(qū)動(dòng)的配置特性(比如說(shuō)可以使用 @ManagedBean 和 @ManagedProperty )。這也意味著可以一定程度上的減少 faces-config.xml 文件的大小,不過(guò)像在 navigation 這些結(jié)點(diǎn)的配置在 XML 文件還是不能少。
JSF2.0 為適應(yīng) AJAX 而改變了自身的生命周期,只需要局部頁(yè)面的交由 AJAX 事件處理。這個(gè)特性使得 JSF+AJAX 的組合更加自然。
JSF2.0 現(xiàn)在內(nèi)置了優(yōu)秀的資源處理器。對(duì) images , JavaScript 文件以及 CSS 樣式等都表現(xiàn)出眾。它可以對(duì)通過(guò)邏輯名稱,資源分組以及版本等方式來(lái)更好的引用資源。
除上述特性外, JSF2.0 還包括許多其它方便的改變。比如說(shuō)支持事件,支持 RAILS_ENV 的開(kāi)發(fā)風(fēng)格 ( 就是 ROR) ,支持對(duì)標(biāo)準(zhǔn)組件集進(jìn)行擴(kuò)展。
EJB 3.1
EJB 在 Java EE 5 就已經(jīng)經(jīng)歷過(guò)了非常大的改動(dòng)。也許看似不可能,但實(shí)際上 EJB3.0 還是在社區(qū)中廣泛得到認(rèn)可,并且采納它的人也在不斷增長(zhǎng)。而這一切也許是因?yàn)槲覀冞^(guò)度的認(rèn)為需要怎么怎么簡(jiǎn)化 Java EE 5 才取得這樣的成績(jī)。比如說(shuō),對(duì) JBoss Seam 的興趣和 GlassFish 的熱情都是重要的關(guān)鍵因素。 EJB3.1 的目標(biāo)就是在增加業(yè)務(wù)組件時(shí),繼續(xù)讓 EJB 變得盡可能簡(jiǎn)單。下面是對(duì) EJB3.1 特性的高度概括:
原本需要甚至實(shí)現(xiàn) Session Beans 的業(yè)務(wù)接口變得可選了,不再?gòu)?qiáng)迫要求實(shí)現(xiàn)。在使用 Session Beans+JSF+WebBeans 的場(chǎng)景下尤其有用。
EJB3.1 增加了 Singleton Beans 的概念。因?yàn)槿藗兏鼉A向于管理共享的應(yīng)用程序狀態(tài),需要保證是完全線程安全的模型。此外, EJB3.1 新增的聲明式的并發(fā)控制也更加靈活。
EJB3.1 一個(gè)可圈可點(diǎn)的的強(qiáng)大特性就是支持 cron 風(fēng)格的 scheduling 。除目前基于 timer API 的調(diào)度計(jì)時(shí)器外,聲明式和編程式的 cron 風(fēng)格的 scheduling API 也加入了進(jìn)來(lái)。
另一個(gè)強(qiáng)大的特性就是可以通過(guò)使用 @Asynchronous 標(biāo)注來(lái)對(duì) Session Bean 的方法進(jìn)行異步調(diào)用。你甚至還通過(guò)它來(lái)控制異步 EJB 方法從而返回一個(gè) java.util.concurrent.Future 對(duì)象。
EJB3.1 Lite 概念的逐漸引入形成了一個(gè) EJB API 的子集,并在 Web Profile 中得到應(yīng)用。只不過(guò) EJB Lite 包含了像事務(wù)處理和安全這樣的特性,而那些消息機(jī)制,遠(yuǎn)程調(diào)用以及 scheduling 等非必須的自然沒(méi)有必要加入其中。除上述列表所述特性外,
EJB3.1 的特性還包括:括直接將 EJB 打包成 war 文件,可運(yùn)行在 embedded 的容器中便于 Java SE 環(huán)境進(jìn)行 JUnit 測(cè)試,使用統(tǒng)一的標(biāo)準(zhǔn)化全局 JNDI 命名方式。
JPA 2.0
到 Java EE 6 的時(shí)候, JPA 已經(jīng)徹底從 EJB 中分離,形成自己的體系 (EJB3.0 已經(jīng)將 JPA 分離出去了 ) 。 JPA 的成功是毫無(wú)疑問(wèn)的。它廣泛得到社區(qū)的采納和一流供應(yīng)商的支持。本來(lái)我們擔(dān)心 EJB2.* 的 Enity Beans 垮臺(tái)可能無(wú)法讓 Java EE 再次引領(lǐng)持久層的標(biāo)準(zhǔn),一個(gè)重要成功的因素就是 Gaving King 和 JBoss 社區(qū)毫不含糊的支持。 JPA2.0 的目標(biāo)就是要在這次成功的基礎(chǔ)上再接再厲,填補(bǔ)更多的空白,再創(chuàng)多的創(chuàng)新:
JPA2.0 加入了大量必須的 ORM 映射增強(qiáng)特性,包括:支持通過(guò)使用 @ElementCollection 標(biāo)注來(lái)增強(qiáng) collections, maps 和 lists( 這里不是指實(shí)體之間的關(guān)聯(lián)關(guān)系 ) 集合,支持 map 的單向 one-to-many 關(guān)聯(lián) (JPA1.0 只允許雙向 one-to-many 關(guān)聯(lián) ) 。
EntityManager 和 Query API 都得到改進(jìn)。比如說(shuō),現(xiàn)在可以從結(jié)果集中直接取得第一條記錄 (JPA1.0 只允許從一個(gè) unique 結(jié)果集中反回單個(gè)記錄 ) ,指定 query 結(jié)果集的最大值,訪問(wèn)各個(gè)供應(yīng)商的底層實(shí)體對(duì)象 manager 或 query ,最后就是加入悲觀鎖 (JPA1.0 只支持樂(lè)觀鎖 ) 。
JPQL 也提供類似于 SQL 的 CASE , NULLIF , COALESCE 等函數(shù) 。
JPA2.0 應(yīng)廣大開(kāi)發(fā)者要求增加了 Criteria API 。要是你對(duì) Hibernate 或 TopLink 的 Criteria API 不熟悉的話,可以將它想像成一個(gè)以 Java 為中心的面向?qū)ο?,線程安全并可以與 JPQL 劃上等號(hào)的一組 API 。這組 API 適合于編寫(xiě)復(fù)雜的動(dòng)態(tài)查詢語(yǔ)句,還可避免解析 JPQL 語(yǔ)句時(shí),所拋出的運(yùn)行期異常。
更完整的 JAP2.0 特性還包括:標(biāo)準(zhǔn)的二級(jí)緩存,標(biāo)準(zhǔn)的 JDBC properties ,指定超時(shí)時(shí)間等等。(來(lái)自互聯(lián)網(wǎng))
- 12008北京奧運(yùn)會(huì)票務(wù)嚴(yán)峻考驗(yàn)IT容量
- 2解決服裝店庫(kù)存積壓的方法及思路
- 32005年度最佳CRM實(shí)施獲獎(jiǎng)企業(yè)名單揭曉
- 4戒定慧與企業(yè)的核心競(jìng)爭(zhēng)力
- 5概說(shuō)《三國(guó)演義》
- 6網(wǎng)管員如何排除無(wú)線路由器的電磁干擾
- 7網(wǎng)管員基礎(chǔ)知識(shí):ADSL加速方法全分析
- 8[服裝管理軟件]如何讓服裝店訂貨更加科學(xué)
- 9泛普軟件告訴您OA系統(tǒng)和招標(biāo)業(yè)務(wù)管理系統(tǒng)的差異
- 10做企業(yè)剎車比加油更安全
- 11貨運(yùn)資格證
- 12戰(zhàn)國(guó)時(shí)代的CRM市場(chǎng)
- 13寧夏啟動(dòng)全民健身狀況調(diào)查
- 14當(dāng)OA辦公軟件系統(tǒng)遇上微信,未來(lái)整合趨勢(shì)大
- 15企業(yè)OA系統(tǒng)優(yōu)化資源配置體現(xiàn)在辦公管理中
- 16營(yíng)銷老總應(yīng)該具有的八項(xiàng)修為
- 17廣東連鎖50強(qiáng)深穗莞三分天下
- 18信息系統(tǒng)項(xiàng)目成本估算的難點(diǎn)
- 19三線城市創(chuàng)業(yè)潮
- 20洗臉能解決不同的肌膚問(wèn)題?新時(shí)代美容
- 21實(shí)施和推廣OA應(yīng)用的企業(yè)在前期需要關(guān)心的問(wèn)題
- 22網(wǎng)管軟件能幫助企業(yè)實(shí)現(xiàn)“零故障”嗎?
- 23八大美院 遼寧藝術(shù)類高考志愿填報(bào)指導(dǎo)
- 24競(jìng)爭(zhēng)情報(bào)的內(nèi)涵與搜集途徑
- 25創(chuàng)新帶動(dòng)成長(zhǎng),凝聚發(fā)展力量
- 26棱鏡事件讓硅谷企業(yè)遭遇“滑鐵盧”
- 27重慶OA系統(tǒng)專家淺析OA系統(tǒng)的應(yīng)用實(shí)施
- 28用市場(chǎng)化的眼光看ITIL管理軟件
- 29平臺(tái)型化的OA辦公軟件擁有其良好的技術(shù)架構(gòu)
- 30怎樣進(jìn)行完善的CRM配置
成都公司:成都市成華區(qū)建設(shè)南路160號(hào)1層9號(hào)
重慶公司:重慶市江北區(qū)紅旗河溝華創(chuàng)商務(wù)大廈18樓