struts2電腦版是一款專業(yè)可靠的Web開發(fā)軟件,struts2官方版采用MVC設(shè)計(jì)模式的Web框架,可以直接建立模型,同時(shí)還可以用來進(jìn)行視圖的數(shù)據(jù)交互,struts2電腦版有多種整合方式可使用,現(xiàn)在與其他類型的框架,如Spring、Tiles、SiteMesh之類的,整合更為容易了。
struts2軟件亮點(diǎn)
POJO表單及POJO操作 - Struts2 去除掉了Struts框架中的Action Forms部分。在Struts2框架下,你可以用任何一POJO來接收表單輸入,同樣的,你可以把任一POJO視為一個(gè)Action類。
標(biāo)簽支持 - Struts2 改進(jìn)了標(biāo)簽表單,而新的標(biāo)簽可讓開發(fā)人員減少代碼編寫量。
AJAX支持 - Struts2 被認(rèn)可接收進(jìn)Web 2.0技術(shù),并創(chuàng)建了功能非常類似于標(biāo)準(zhǔn)的Struts2 標(biāo)簽的AJAX標(biāo)簽,把AJAX支持整合進(jìn)其結(jié)果中。
易于整合 - Struts有多種整合方式可使用,現(xiàn)在與其他類型的框架,如Spring、Tiles、SiteMesh之類的,整合更為容易了。
模板支持 - 支持使用模板生成視圖。
插件支持 - 有大量的插件可用于Struts2,而使用插件可以增強(qiáng)和擴(kuò)大Struts2 核心行為。
struts2軟件特色
性能分析 - Struts2 為調(diào)試和配置應(yīng)用程序提供綜合的性能分析,此外,Struts也以嵌入調(diào)試工具的形式提供集成調(diào)試。
易于修改標(biāo)簽 - 在Struts2 中,可使用Freemarker的模板對標(biāo)簽標(biāo)記進(jìn)行調(diào)整,而修改標(biāo)簽不需要JSP或是Java知識,基本的HTML、XML和CSS知識就足夠了。
促進(jìn)減少配置 - Struts2 使用各種設(shè)置的默認(rèn)值促進(jìn)減少配置,而你不需要再配置什么除非是偏離了Struts2 設(shè)定的默認(rèn)設(shè)置。
視圖技術(shù) - Struts2 為多種視圖選項(xiàng)(JSP、Freemarker、Velocity、XSLT等)提供支持。
struts2MVC架構(gòu)
模型(Model)-視圖(View)-控制器(Controller),通常簡稱MVC,是一種開發(fā)web應(yīng)用程序的軟件設(shè)計(jì)模式。該軟件設(shè)計(jì)模式由以下三部分組成:
模型——屬于軟件設(shè)計(jì)模式的底層基礎(chǔ),主要負(fù)責(zé)數(shù)據(jù)維護(hù)。
視圖——這部分是負(fù)責(zé)向用戶呈現(xiàn)全部或部分?jǐn)?shù)據(jù)。
控制器——通過軟件代碼控制模型和視圖之間的交互。
MVC普及的原因在于它區(qū)分了應(yīng)用程序的邏輯層和用戶界面層,并支持開發(fā)關(guān)注點(diǎn)的分離。在MVC模式下,控制器接收了所有來自應(yīng)用程序的請求后,調(diào)用模型去準(zhǔn)備視圖所需要的數(shù)據(jù),然后視圖使用由控制器提供的數(shù)據(jù)最終生成一個(gè)可視的響應(yīng)。MVC的抽象概念可通過以下圖形進(jìn)行表述:
模型
模型主要負(fù)責(zé)管理應(yīng)用程序的數(shù)據(jù),它通過響應(yīng)視圖的請求和控制器的指令來更新自身的數(shù)據(jù)。
視圖
通過控制器的指令觸發(fā)所展現(xiàn)的一種特殊的數(shù)據(jù)格式。它們是基于像JSP、ASP、PHP之類模板系統(tǒng)的腳本,較易與AJAX技術(shù)進(jìn)行整合。
控制器
控制器負(fù)責(zé)響應(yīng)用戶輸入并執(zhí)行數(shù)據(jù)模型對象的交互??刂破髟诮邮?、確認(rèn)輸入后執(zhí)行修改數(shù)據(jù)模型狀態(tài)的業(yè)務(wù)操作。
Struts2是一個(gè)以MVC為基礎(chǔ)的框架。在接下來的章節(jié),讓我們看看如何在Struts2中使用MVC。
struts2使用方法
我用的是struts2.2.1.1-all.zip(不管用struts2的哪個(gè)版本,道理都一樣,找對應(yīng)的包就行了)
例如你建一Web Project,名為Struts2 導(dǎo)入項(xiàng)目所需要的jar包,放入/Struts2/WebRoot/WEB-INF/lib下面
方法一:
在struts2存放目錄(以我的舉例說明)
F:JavaWeb教程ssh-jarstruts-2.2.1.1-allstruts-2.2.1.1lib下面找到以下包
commons-fileupload-1.2.1.jar//文件上傳時(shí)用的,為了以后用到,最好加入
commons-io-1.3.2.jar//同上
commons-logging-1.0.4.jar
freemarker-2.3.16.jar
javassist-3.7.ga.jar
ognl-3.0.jar
struts2-core-2.2.1.1.jar
xwork-core-2.2.1.1.jar
共8個(gè)包,將其復(fù)制到/Struts2/WebRoot/WEB-INF/lib下面
方法二:(不用復(fù)制,導(dǎo)入法)
(1).右擊項(xiàng)目名稱Struts2-->Build Path-->Configure Build Path...-->打開一對話框
(2).選擇左邊的"Java Build Path"選項(xiàng)-->選擇Libraries選項(xiàng)卡-->Add External JARs-->去尋找 F:JavaWeb教程ssh-jarstruts-2.2.1.1-allstruts-2.2.1.1lib下面的指定的jar包導(dǎo)入即可
struts2常見問題
如何使用攔截器?
讓我們看看如何在我們的“Hello World”程序中使用一個(gè)已經(jīng)存在的攔截器。我們將首先使用timer攔截器,目的是測量執(zhí)行action方法所需的時(shí)間。同時(shí)我們使用params攔截器,目的是將請求參數(shù)發(fā)送給action。你可以嘗試不在你的例子中使用這個(gè)攔截器,然后你會(huì)發(fā)現(xiàn)name屬性沒有被設(shè)置,因?yàn)閰?shù)無法發(fā)送給action。
我們可以保留HelloWorldAction.java,web.xml,HelloWorld.jsp和index.jsp文件,因?yàn)樗鼈円言贖ellow World示例一章中創(chuàng)建過了,然后讓我們參照下面修改struts.xml文件給它添加攔截器:
右鍵單擊項(xiàng)目名稱,然后單擊“Export”>“WAR File”創(chuàng)建WAR文件。然后在Tomcat的webapps目錄中部署這個(gè)WAR文件。最后,啟動(dòng)Tomcat服務(wù)器并嘗試訪問URL http://localhost:8080/HelloWorldStruts2/index.jsp。結(jié)果如下圖所示:
現(xiàn)在,在給定文本框中輸入任意單詞,然后單擊Say Hello按鈕執(zhí)行定義的action。如果你去查看生成的日志,會(huì)看到以下文本:
這里的最后一行是由timer攔截器生成的,是表示ation總共需要109ms來執(zhí)行。
struts2更新日志:
1.將bug掃地出門進(jìn)行到底
2.有史以來最穩(wěn)定版本
小編推薦:struts2作為一款久經(jīng)風(fēng)霜的,已經(jīng)在一次又一次的版本中進(jìn)行了更新?lián)Q代,給用戶帶來了極高的使用體驗(yàn),強(qiáng)烈推薦需要的用戶下載體驗(yàn),另外還推薦{recommendWords}等相關(guān)軟件下載使用。