Struts是一個Web Framework
那麼什麼是Framework?
Framework概念並不是很新了
伴隨著軟件開發的發展
在多層的軟件開發項目中
可重用
易擴展的
而且是經過良好測試的軟件組件
越來越為人們所青睐
這意味著人們可以將充裕的時間用來分析
構建業務邏輯的應用上
而非繁雜的代碼工程
於是人們將相同類型問題的解決途徑進行抽象
抽取成一個應用框架
這也就是我們所說的Framework
Framework的體系提供了一套明確機制
從而讓開發人員很容易的擴展和控制整個framework開發上的結構
通常
framework的結構中都有一個
命令和控制
組件
常見的B/S WebFramework已經有很多了
其中不少也是很成功優秀作品
下面列舉一部分
Struts
主要關注於Controller流程
基於JSP與Taglib實現的View
Cocoon
jakarta出品的用於處理XML的框架
將XML作為View並可以良好結合XSLT
Webwork
jive論壇采用的框架
采用command模式進行action的轉發
並可結合多種view模型
Turbine
同樣是jakarta出品
是一個基於 Servlet 的Framework
使得 java 開發者可以快速
安全的構建自己的網絡應用
采用Velocity 作為表現層
(Velocity
一個基於 Java 的模版引擎 )
Tapestry: 一個優秀的framwork
類似於dotNet中的winform
使用html和一個servlet共同生成一個View
Spring
Spring是一個服務於所有層面的application framework:提供了bean的配置基礎
AOP的支持
JDBC的提取框架
抽象事務支持
等等
它有一個非常顯著的特點
在某個層面上如果你不需要Spring的支持
你就可以不使用String的class
只使用它的某一部分的功能
JSF
JavaServerFaces
它並不算是Framework
但JSF同樣提供了一種不同的View生成方式
它可以和多種Framework整合
在J
EE
中
JSP
規范就包含了JSF標准
Framework有很多種
Struts並不是我們唯一的選擇
我們可以根據具體的項目來選擇不同的framework
之所以struts現在比較流行
其主要原因是它推出的比較早
版本較穩定
並且是MVC及core J
EE patterns的標准實現
將來的發展趨勢
很有可能是JSF+Struts+Spring+Hibernate/JDO的開發模式
From:http://tw.wingwit.com/Article/program/Java/ky/201311/27904.html