一個電子商務web應用的系統架構

來源:互聯網
上載者:User
前端時間參加了一個電子商務的項目,對於其中的系統架構景仰不已。這裡分web層、業務層和持久層說,與大家分享。

web層用的是:velocity + turbine.velocity是和jsp等同的一種語言。與Jsp相比,它更好地把顯示功能獨立出來(其實是因為velocity語言沒有JSP功能強大)。velocity中沒有複雜的邏輯,主要負責把vo中的對象顯示出來。與struts解決jsp的缺點對應,我們這個系統用turbine作為控制層,串連顯示層和業務層。控制層負責簡單的校正,並調用delegate。delegate中調用session bean。

業務層主要封裝在AO(Application Object)中。session bean中僅僅調用AO執行商務邏輯。從AO中返回Context直到控制層。之所以不從控制層直接調用AO的原因是為了以後的拓展,和分層、部署。

資料庫持久層用的是ibatis。開發過程中專門有人負責DAO這塊,我們只要把需要的介面告訴給他就可以了。ibatis是一個開源的架構。與hibernate不同的是它不是實現javabean 與  資料庫表的映射,而是javabean與sql 語句的映射。而且所有的資料庫操作可以放到xml檔案中配置而不會寫入程式碼到java程式中。

該架構還有一個特點是:資料庫返回的是DO(Database Object),頁面用的是VO(Value Object)。多個DO對象可以合并成一個VO對象,對應一個頁面。

架構中用到了很多的服務,通過XML檔案來佈建服務。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.