国产18禁黄网站免费观看,99爱在线精品免费观看,粉嫩metart人体欣赏,99久久99精品久久久久久,6080亚洲人久久精品

編程經(jīng)驗(yàn)系列Java學(xué)習(xí)雜談(九):Struts2

時(shí)間:2008-10-06 16:54:00   來(lái)源:無(wú)憂考網(wǎng)     [字體: ]
簡(jiǎn)短回顧一段歷史:隨著時(shí)間的推移,Web應(yīng)用框架經(jīng)常變化的需求,產(chǎn)生了幾個(gè)下一代 Struts的解決方案。其中的Struts Ti 繼續(xù)堅(jiān)持 MVC模式的基礎(chǔ)上改進(jìn),繼續(xù)Struts的成功經(jīng)驗(yàn)。 WebWork項(xiàng)目是在2002年3月發(fā)布的,它對(duì)Struts式框架進(jìn)行了革命性改進(jìn),引進(jìn)了不少新的思想,概念和功能,但和原Struts代碼并不兼 容。WebWork是一個(gè)成熟的框架,經(jīng)過(guò)了好幾次重大的改進(jìn)與發(fā)布。在2005年12月,WebWork與Struts Ti決定合拼, 再此同時(shí),Struts Ti 改名為 Struts Action Framework 2.0,成為Struts真正的下一代。
  看看Struts-2的處理流程:
  1) Browser產(chǎn)生一個(gè)請(qǐng)求并提交框架來(lái)處理:根據(jù)配置決定使用哪些攔截器、action類和結(jié)果等。
  2) 請(qǐng)求經(jīng)過(guò)一系列攔截器:根據(jù)請(qǐng)求的級(jí)別不同攔截器做不同的處理。這和Struts-1的RequestProcessor類很相似。
  3) 調(diào)用Action: 產(chǎn)生一個(gè)新的action實(shí)例,調(diào)用業(yè)務(wù)邏輯方法。
  4) 調(diào)用產(chǎn)生結(jié)果:匹配result class并調(diào)用產(chǎn)生實(shí)例。
  5) 請(qǐng)求再次經(jīng)過(guò)一系列攔截器返回:過(guò)程也可配置減少攔截器數(shù)量
  6) 請(qǐng)求返回用戶:從control返回servlet,生成Html.
  這里很明顯的一點(diǎn)是不存在FormBean的作用域封裝,直接可以從Action中取得數(shù)據(jù)。 這里有一個(gè)Strut-2配置的web.xml文件:
  controller
  org.apache.struts.action2.dispatcher.FilterDispatcher
  cotroller
  /*
  注意到以往的servlet變成了filter,ActionServlet變成了FilterDispatcher,*.do變成了/*.filter 配置定義了名稱(供關(guān)聯(lián))和filter的類。filter mapping讓URI匹配成功的的請(qǐng)求調(diào)用該filter.默認(rèn)情況下,擴(kuò)展名為 ".action ".這個(gè)是在default.properties文件里的 "struts.action.extension "屬性定義的。