java重量级框架_框架之轻量级和重量级
框架之輕量級和重量級
一:基本概念:
量級主要是看容器的依賴性所決定的
,
依賴性越小
,
越輕量
.
1
、輕量級框架
1.
定義:在
Java
應用程序開發環境中,
“
輕量級
Java”
主要是指兩個東西:簡化的編程模型和更具響應能力的容器。輕
量級
Java
旨在消除與傳統
J2EE
API
有關的不必要的復雜性和限制。它也將縮短應用程序的部署時間,這對于支持開
發最佳實踐(比如頻繁單元測試)非常重要。
2.
現在比較重要的輕量級以及對終端用戶的幫助:
控制反轉
(IoC)
模式在這個領域有著重大的影響。
使用
IoC
,
開發人員
不需要編寫復雜的代碼來執行查詢、處理基礎架構異常或管理連接,就能夠解決對象依賴性問題。這有助于簡化代碼、
將業務邏輯與基礎架構分離,從而使應用程序更易于維護。
輕量級
Java
的另一個關鍵特征是,它不會強迫業務對象遵循平臺特定接口。這允許開發人員在普通舊式
Java
對象
(POJO)
中實現業務邏輯
,
從而提高生產率。
與具體的類相反,當把開發的最佳實踐與界面相結合時
,
這些特性也使得對代碼進行單元測試容易得多。由于業務邏輯
實現在
POJO
中,
所以不再需要將對象部署到重量級容器中以在單元測試中練習它。
因此,
將對象宿主在諸如
JUnit
之
類的簡單測試環境中和為快速迭代單元測試
“
模擬
”
外部依賴性就變得微不足道了。
3.
現在典型的輕量級框架:
Struts
、
Hibernate
、
Spring
、
Beehive.....
注:感覺轉向輕量級技術越來越猛了,傳統的重量級
EJB
也推出
EJB3.0
也基本上是以使得輕量級
Java
盛行的概念為
基礎。
2
、重量級框架
dev2dev:
人們在想起應用服務器供應商時,通常把它們置于
“
重量級陣營
”
。我想您正在努力改變這種狀況,對吧?換言
之,許多人認為應用程序供應商已經在實現重量級組件(比如
EJB
2.0
)上付出了很大的代價,它們不愿意輕易放棄這
些成果。
Jim:
首先,我認為沒有理由放棄在
EJB
上的現有投資,因為在某些場景中它仍然是最好的技術,例如當您希望通過
RMI
遠程公開業務服務時。當然,諸如
EJB
之類的開放標準在保護客戶投資方面的價值也不能低估。
已經說過
,
我覺得人們經常過分強調
EJB
在應用服務器中的實際價值。盡管這一點未必對所有的應用服務器供應商都適
用,但是
BEA
只投入了相對較少的一部分開發資源來支持
J2EE
API
。我們工作最主要的目標是為宿主應用程序構建
最可靠、可伸縮和容錯的內核。這些品質以及分布式事務服務、高速消息傳遞、遺留系統集成、高級
Web
服務、配置
管理、診斷和故障排除和高級安全性,代表了
WebLogic
Server
的真正價值,而且對總體擁有成本(
TCO
)有著巨大
的影響。幸運的是,這些附加值對基于
Spring
或
Beehive
的應用程序的相關性和適用性與采用
EJB
構建的應用程序
是一樣的。雖然輕量級
Java
技術使得應用程序的開發和維護更容易,但是它們不會代替真正高端應用服務器的品質。
實際上,我們認為輕量級
Java
與
WebLogic
Server
是一致的。
dev2dev:
BEA
有沒有一個輕量級
Java
策略?
BEA
實現輕量級
Java
的方法是什么?
Jim:
我們的策略是接納所有有利于提高開發人員生產率、在市場上為部署這些技術提供最佳平臺的技術。輕量級
Java
有助于降低開發成本
,WebLogic
Server
則有助于降低運營成本
,
它們是一個非常強大的組合。
3
、應用程序框架
dev2dev:
由
BEA
贊助的
Beehive
項目顯然是一個輕量級
Java
組件模型。您能否談談關于
Beehive
的情況,以及它
在你們的整個策略中的地位?
Jim:
Beehive
是一個應用程序框架,
致力于使
J2EE
應用程序和基于
SOA
的應用程序的開發更容易,
它基于我們發布
WebLogic
Workshop
的經驗。它基于
POJO
和用于配置依賴性、服務質量等的元數據提供一個編程模型。元數據以
J2SE
5.0
代碼注解和外部
XML
文件的形式獲得支持。存在一些用于訪問
J2EE
資源、定義業務和
Web
服務以及基
總結
以上是生活随笔為你收集整理的java重量级框架_框架之轻量级和重量级的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: jfinal js 拦截_jfinal
- 下一篇: 单链表的逆序java_java 实现单链