天道不一定酬所有勤
但是,天道只酬勤

webx學習(一)——初識webx

開發十年,就只剩下這套架構體系了??!

Webx是一個在阿里巴巴集團內部廣泛使用的,層次化、模塊化的一個Web框架。 Webx是基于經典MVC設計模式的WEB框架,推崇頁面驅動和約定勝于配置的理念。 Webx是一個基于Spring的組件框架。組件是一個軟件包,它可以被其它組件擴展,也可以擴展其它組件。利用這些特性,Webx不僅能夠用來開發高度可定制的Web應用(這是它的主要功能),也能夠用來幫助你開發高度可擴展的非WEB的應用

webx框架官方文檔:http://openwebx.org/

webx框架的的層次

SpringExt:基于Spring,提供擴展組件的能力。它是整個框架的基礎。

Webx Framework:基于Servlet API,提供基礎的服務,例如:初始化Spring、初始化日志、接收請求、錯誤處理、開發模式等。Webx Framework只和servlet及spring相關 —— 它不關心Web框架中常見的一些服務,例如Action處理、表單處理、模板渲染等。因此,事實上,你可以用Webx Framework來創建多種風格的Web框架。

Webx Turbine:基于Webx Framework,實現具體的網頁功能,例如:Action處理、表單處理、模板渲染等。
我們在使用webx框架的時候,可以使用整個框架,也可以只使用webx框架中的部分。

比如說可以只使用SpringExt。
僅使用SpringExt及Web組件,在此基礎上運行Spring MVC、Struts等非webx框架。
僅使用Webx Framework,創造新的Web框架
使用整個Webx框架,定制Turbine

在應用啟動的時候,會加載一個Spring容器到內存中,并且默認的在容器中添加一些用于服務的Service Bean,這些Service Bean會通常在整個生命周期中存在并提供各項服務。對于不同的層次,其Service會有各種不同的擴展,
比如在SpringExt層次中有用于加載資源的ResourceLoaderService,
在Webx Framwork層次中擴展了用于控制整個應用流程的Pipeline Service,
在Webx Turbine層次中又擴展了用于加載模塊的ModuleLoaderService。
這些service都會有與其對應的Service Bean在Spring容器加載的時候被添加到Spring容器中,有時候這些Service Bean也會被注入到應用中具體的Bean中去,為其提供服務。

(全文完) 歡迎關注『Java之道』微信公眾號
贊(0)
如未加特殊說明,此網站文章均為原創,轉載必須注明出處。HollisChuang's Blog » webx學習(一)——初識webx
分享到: 更多 (0)

評論 1

  • 昵稱 (必填)
  • 郵箱 (必填)
  • 網址
  1. #1

    是不是在webx中不可以配置aop呢?我在webx.xml中配置了<aop:aspectj-autoproxy />,然后申明了切面和通知,但是測試時沒有執行到這個通知,而且我把匹配通知的execution改為了不存在的包下,發現跑起來居然沒有報錯,是不是在加載的時候沒有將aop當成bean加載進webx容器中?

    __jdom0000003年前 (2017-01-09)回復

HollisChuang's Blog

聯系我關于我
网上设计赚钱的网站有哪些