很多朋友經常談論下面的話題:
「我看了bboss mvc的架構圖和部分**,發現和struts1.x的架構幾乎完全一樣,請問bboss mvc有自己獨有的特點嗎?」
現在我們就這個話題做乙個簡單的**。
所有的mvc框架的原理基本上都是一樣的,bboss mvc和struts都實現了mvc2模式,但是他們的區別還是非常大的:
第一、struts和bboss mvc的view層得標籤庫完全不一樣,bboss有自己的分頁標籤,struts就沒有。
第二、bboss mvc的控制器是通過bboss ioc來管理的,struts沒有自己的ioc容器,當然struts也可以借助於spring來達到這個目的。
第三、bboss mvc中的控制器依賴業務元件也是通過bboss ioc容注入的,當然struts也可以借助於spring來達到這個目的。
第四、採用bboss mvc來開發應用時,持久層可以採用bboss 持久層來開發,持久層提供了通用的dao,無需再編寫自己的dao,同時這個通用dao也是直接通過bboss ioc直接注入業務元件的,這些特性都是struts沒有的。
第五點,也是最重要的乙個區別,bboss mvc中的控制器都是單例項的,控制器方法的引數繫結機制比struts要靈活得多,每個引數都是方法引數,可以非常方便地實現list、map、array、日期等型別的資料繫結。而struts 2的控制器是多例項的並且控制器方法引數都要是以類全域性引數的方式來繫結的。
第六個區別,struts 1.x好像還需要配置formbean,而bboss mvc是不需要的。
另外可以從整體上看一下bboss mvc的結構圖(見下圖),圖的左側區域就是通用的mvc2結構,這個和struts之類的mvc框架都是一樣的,不同的是圖的右側區域,bboss mvc中的view、controller、model(包括model層下面的dao層)都是通過bboss ioc來進行配置、管理和監控的,也就是通過bboss ioc來綜合治理bboss mvc的各個層面,這些特性我想struts也是沒有的。
[img]
當然,struts也有它特有的優勢特點,本人對struts接觸不多,所有上面僅代表我個人的看法,如有不妥可進一步**,希望通過與大家的深入交流發現bboss 的不足並加以改進,同時吸取其他框架的優勢特點,把bboss做的更好。
Struts和struts2的不同
struts和struts2的不同點 1 action struts的action類要求繼承乙個基類。struts2的action類是通過實現介面。2 執行緒模式 struts action執行緒不安全的,單列的模式。struts2 action物件為每個請求產生乙個例項 3 servlet依賴 s...
struts和springmvc的區別和執行原理
struts 搭建過程 載入web.xml 配置struts核心控制器 1 攔截 規定字尾請求 2 載入struts.xml 讀取配置掃瞄註解 常用註解 action 例項化action 規定訪問url result 規定返回結果集配置 傳值方式 string 屬性驅動 基於 成員 全域性 變數傳值...
struts1和struts2的區別
1 struts1必須要繼承乙個抽象基類 dispatchaction struts2 只要是乙個有execute方法的pojo就可以,不用一定繼承 但是,struts2一般繼承乙個com.opensymphany.xwork2.actionsupport來實現一些常用方法。3 表示式 struts...