2009-07-09 80 views
0

您對Java中的模塊化開發有何建議? OSGI是偉大的,但它支持JPA是可憐的。我真的不想寫另一個框架,但似乎不可避免。模塊化開發

回答

0

我不認爲問題是在OSGI中缺少對JPA的支持,但缺乏對OSGI類加載器的JPA實現的支持。無論如何,我離題了。

您可能使用OpenJPA和OSGI成功。最新版本已經打​​包成OSGI捆綁包。我也離開了這個link,它解釋瞭如何讓OpenJPA在Apache Felix中工作。

+0

感謝mil,鏈接解決了我的問題。 – Nico 2009-08-26 16:12:59

5

模塊化開發的最佳見解:先考慮代碼,稍後重構,經常重構。世界上沒有可以取代思想的框架/圖書館。

+0

「先考慮,代碼稍後,經常重構。」 - 我的新口頭禪謝謝。 – Nico 2009-08-26 16:13:22

1

想想你想達到什麼樣的目標,並保持概念與技術脫節。然後嘗試尋找適合您嘗試實現的技術。如果沒有一套符合您需要的技術/工具/框架,請做一些重新思考並找到適合概念和實施的中間位置。

0

您的問題的答案很依賴於您正在構建的應用程序。 Java EE,ESB和OSGi都是適用於某些問題的模塊化部署策略。

構建企業面向服務的軟件與可插拔客戶端應用程序是具有不同解決方案的非常不同的應用程序。

我目前正在開發一個項目,該項目使用後端的Java EE部署服務以及使用這些服務的基於Eclipse/OSGi的胖客戶端。在後端服務(Java EE),基於客戶端的服務(純OSGi)和UI組件(Eclipse插件)之間,設計和部署是相當模塊化的。

任何這些技術要克服的最大因素是瞭解它們如何工作和適當地設計您的應用程序以在其約束範圍內工作。如前所述,類加載是這些環境中任何複雜應用程序的一個非常一致的問題,但預先了解這些問題可以使軟件適用於該技術。

像Spring這樣的框架的使用可以很好地編寫代碼,將依賴關係切換到底層技術,但仍然能夠利用其獨特功能。

0

我猜OSGi是現今Java EE的主流。這是構建模塊化應用程序的正確選擇。是的,平臺成熟度和接受度存在一些問題,但要看看社區的努力和意願(例如SpringSource,Eclipse)以使其更好。這些實現是開源的,許多IDE支持OSGi開發。我建議採用OSGi實現之一,而不是開發自己的框架,即使存在今天的這些限制。