国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

Struts的起源

2019-11-18 12:56:12
字體:
供稿:網(wǎng)友

  Struts最早是作為Apache Jakarta項(xiàng)目的組成部分,項(xiàng)目的創(chuàng)立者希望通過對(duì)該項(xiàng)目的研究,改進(jìn)和提高javaServer Pages 、Servlet、標(biāo)簽庫(kù)以及面向?qū)ο蟮募夹g(shù)水準(zhǔn)。Struts這個(gè)名字來源于在建筑和舊式飛機(jī)中使用的支持金屬架。這個(gè)框架之所以叫"Struts",是為了提醒我們記住那些支撐我們房屋,建筑,橋梁,甚至我們踩高蹺時(shí)候的基礎(chǔ)支撐。這也是一個(gè)解釋Struts在開發(fā)Web應(yīng)用程序中所扮演的角色的出色描述。當(dāng)建立一個(gè)物理建筑時(shí),建筑工程師使用支柱為建筑的每一層提供支持。同樣,軟件工程師使用Struts為業(yè)務(wù)應(yīng)用的每一層提供支持。它的目的是為了幫助我們減少在運(yùn)用MVC設(shè)計(jì)模型來開發(fā)Web應(yīng)用的時(shí)間。我們?nèi)匀恍枰獙W(xué)習(xí)和應(yīng)用該架構(gòu),不過它將可以完成其中一些繁重的工作。假如想混合使用Servlets和jsp的優(yōu)點(diǎn)來建立可擴(kuò)展的應(yīng)用,Struts是一個(gè)不錯(cuò)的選擇。
  
    早期Smalltalk 程序語言便采用了MVC(Model-View -Controller) 模式( Patterns ) 以增加程序代碼彈性,MVC模式將程序代碼整理切割為三部份,Model 部分是業(yè)務(wù)與應(yīng)用領(lǐng)域( Business domain) 相關(guān)邏輯、治理狀態(tài)之對(duì)象,Controller 部分接收來自View 所輸入的資料并與Model 部分互動(dòng),是業(yè)務(wù)流程控制( Flow Control) 之處,View 部分則負(fù)責(zé)展現(xiàn)資料、接收使用者輸入資料。在Java 應(yīng)用中,JFC/Swing、AWT、JSP 皆是可用作View 之技術(shù)規(guī)格,而JavaBean 與EnterPRise JavaBean 規(guī)格則可用于Model 程序代碼,一旦應(yīng)用程序以MVC 模式加以適當(dāng)之分割,Model 部分程序代碼可在不同使用者接口外觀之應(yīng)用程序中重復(fù)使用。
  
    隨著JSP 與Servlet 技術(shù)大量應(yīng)用于以Web 為基礎(chǔ)之應(yīng)用程序,Java 開發(fā)人員群體認(rèn)為應(yīng)以較佳之模式以提升Web 應(yīng)用程序之可維護(hù)性與重復(fù)使用性。早期JSP 規(guī)格書中曾列舉兩種可行之JSP 應(yīng)用架構(gòu),分別為Model1 與Model 2。
  
    在Model 1 架構(gòu)中,JSP 直接處理Web 瀏覽器送來之請(qǐng)求( Request ),并輔以JavaBean 處理應(yīng)用相關(guān)邏輯。Model 1 架構(gòu)單純編寫比較輕易,但在Model 1 中JSP 可能同時(shí)肩負(fù)View 與Controller 角色,兩類程序代碼有可能混雜而不易維護(hù)。而Model 2 中將Servlet 納入架構(gòu)中扮演前端Controller 角色,將Web 瀏覽器送出之請(qǐng)求集中送至Servlet ,Servlet 可集中治理使用者登入、權(quán)限控制、多國(guó)語言轉(zhuǎn)換等前置處理,再視需求轉(zhuǎn)向給對(duì)應(yīng)之JSP 處理。Model 2 中采用了較佳之MVC 模式,但增加了編寫復(fù)雜度。
  
    Struts是Apache軟件基金下Jakarta項(xiàng)目的一部分。除Struts之外,還有其他成功的開源產(chǎn)品,包括Tomcat, Ant 和Velocity。2000 年Craig R. McClanahan 先生貢獻(xiàn)了他編寫的JSP Model 2 架構(gòu)之application Framework 原始程序代碼給Apache 基金會(huì),成為Apache Jakarta 計(jì)劃Struts Framework 前身。
  
    開始的代碼基礎(chǔ)從2000年5月開始開發(fā),直到2001年6月,1.0版本發(fā)布。有30 多個(gè)開發(fā)者參與進(jìn)來,并有數(shù)千人參與到討論組中。Struts 代碼基礎(chǔ)由一個(gè)志愿的Commnitter團(tuán)隊(duì)來治理。到2002年,Struts 小組共有9個(gè)志愿Commnitter。
  
    Struts框架的主要架構(gòu)設(shè)計(jì)和開發(fā)者是Craig R.McClanahan。Craig 也是Tomcat 4的主要架構(gòu)師,以及Java Web Services Developer Pack的主要架構(gòu)師和實(shí)現(xiàn)者。他現(xiàn)在是Sun的JavaServer Faces (JSR-127) 以及J2EE平臺(tái)的Web層架構(gòu)的規(guī)范領(lǐng)導(dǎo)。Craig R. McClanahan 先生是JCP EXPertGroup 成員之一,曾參與JSP 規(guī)格制定與Tomcat 4 之編寫,因此Struts Framework 廣受Java 開發(fā)人員群體所重視。Borland 自2002 年底開始于開發(fā)工具JBuilder 中支持Struts Framework。

上一篇:Struts VS Turbine

下一篇:Struts Layout

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 库伦旗| 饶阳县| 丹寨县| 满城县| 哈尔滨市| 古浪县| 安塞县| 乳山市| 景德镇市| 白河县| 勐海县| 晴隆县| 扶绥县| 九龙县| 桂平市| 平乐县| 满洲里市| 柘城县| 灵武市| 益阳市| 东港市| 南宫市| 海城市| 白朗县| 拉萨市| 得荣县| 青海省| 维西| 于田县| 静安区| 海晏县| 油尖旺区| 五大连池市| 奇台县| 洪江市| 德格县| 佛坪县| 恩平市| 曲阜市| 浠水县| 阳江市|