官术网_书友最值得收藏!

6.2 Struts2簡介

6.2.1 什么是Struts2

Struts2是建立在JSP和Servlet之上的一個Web應(yīng)用開發(fā)框架,是Apache基金會Jakarta項目的一部分。Struts2是MVC的一種新實現(xiàn),繼承了MVC的各項特性,并根據(jù)Java EE的特點,做了相應(yīng)的變化與擴(kuò)展。

Struts2和Struts1存在很大區(qū)別,Struts1已經(jīng)淘汰不用。

傳統(tǒng)的Java Web開發(fā)采用JSP+Servlet+JavaBean的方式來實現(xiàn)MVC,但它有一個缺陷:程序員在編寫程序時必須繼承HttpServlet類、覆蓋doGet()和doPost()方法,嚴(yán)格遵守Servlet代碼規(guī)范編寫程序。

在Web應(yīng)用中使用Struts2,開發(fā)人員可以把精力集中在真正的業(yè)務(wù)邏輯上,而不再分心于如何分派請求,從而可以大大提高Web應(yīng)用的開發(fā)速度。它是一個MVC設(shè)計模式構(gòu)建Web應(yīng)用程序的開源框架,充分體現(xiàn)了MVC設(shè)計模式的“分類顯示邏輯和業(yè)務(wù)邏輯”能力。

用Struts2實現(xiàn)的MVC系統(tǒng)與傳統(tǒng)的用Servlet編寫的MVC系統(tǒng)相比,兩者在結(jié)構(gòu)上的區(qū)別如圖6-2所示。

圖6-2 Struts2實現(xiàn)的MVC系統(tǒng)與Servlet實現(xiàn)的MVC系統(tǒng)

a) Servlet控制的MVC系統(tǒng) b) Struts 2控制的MVC系統(tǒng)

特別地,Servlet和Action的生命周期有很大區(qū)別。

● Servlet:默認(rèn)在第一次訪問的時候創(chuàng)建,只創(chuàng)建一次,是一個單例對象。

● Action:一樣是訪問的時候創(chuàng)建對象,每次訪問Action的時候都會創(chuàng)建新的Action對象,是一個多實例對象。

主站蜘蛛池模板: 措美县| 汽车| 裕民县| 东辽县| 百色市| 耒阳市| 巧家县| 嘉义县| 天长市| 虞城县| 大埔县| 留坝县| 弥渡县| 西藏| 哈巴河县| 米泉市| 新乐市| 大名县| 临西县| 澎湖县| 大姚县| 巫溪县| 睢宁县| 永济市| 自治县| 三穗县| 独山县| 浦江县| 尉犁县| 河源市| 沙河市| 阜阳市| 玛多县| 诸城市| 玉树县| 长兴县| 泸州市| 女性| 夏邑县| 丰台区| 武义县|