struts2相關簡單介紹
一 Struts2環境配置
1.準備jar包,核心jar包有:
2.創建Struts2項目並導入jar包
3.在Struts2項目中src下創建Struts.xml配置文件
4.在Web.xml文件中配置攔截器
其中:org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter來自
二使用
1.Struts自動設值:
1.1必須繼承ActionSupport這個類
1.2將你要自動設值得對象進行 get set
1.3必須要在struts.xml
2.Struts頁面操作:
2.1尋找到struts.xml中的result標簽中name屬性和後臺return配對後進行跳轉頁面。
2.2result的屬性:
重點介紹:
{ dispatcher :跳轉到一個指定的jsp頁面 , 在沒有設值type屬性的時候為默認屬性。
redirect:重定向,可以執行跳轉到一個url。
redirectAction:可以指定跳轉到一個action. 通常用這個。
}
其他:
1,dispatcher [默認配置]
org.apache.struts2.dispatcher.ServletDispatcherResult
默認結果類型,用來呈現JSP頁面
2,chain
com.opensymphony.xwork2.ActionChainResult
將action和另外一個action鏈接起來
3,freemarker
org.apache.struts2.views.freemarker.FreemarkerResult
呈現Freemarker模板
4,httpheader
org.apache.struts2.dispatcher.HttpHeaderResult
返回一個已配置好的HTTP頭信息響應
5,redirect
org.apache.struts2.dispatcher.ServletRedirectResult
6,redirectAction
org.apache.struts2.dispatcher.ServletActionRedirectResult
將用戶重定向到一個已定義好的action
7,stream
org.apache.struts2.dispatcher.StreamResult
將原始數據作為流傳遞回瀏覽器端,該結果類型對下載的內容和圖片非常有用
8,velocity
org.apache.struts2.dispatcher.VelocityResult
呈現Velocity模板
9,xslt
org.apache.struts2.views.xslt.XSLTResult
呈現XML到瀏覽器,該XML可以通過XSL模板進行轉換
10,plaintext
org.apache.struts2.dispatcher.PlainTextResult
返回普通文本類容
-----------------------------------------------------------------------------
這此result-type可以在struts2-core-2.0.11.1.jar包或struts2源代碼中的struts-default.xml文件中找到,在這個文件中找到<result-types>標簽,所有的result-type都在裏面定義了。
三Struts的通配符
*就是他的通配符
{}獲取通配符的格式
第一個* 對應的格式是{1}
第二個* 對應的格式是{2}
...
..
四Struts的國際化
<constant name="struts.custom.i18n.resources" value="zr"></constant>
創建zr_en_US.properties ,zr_zh_CN.properties等文件
文件內容英語配置英語語言格式
中文內容配置根據網頁版Unicode編碼轉換工具或者jdk中的Unicode編碼轉換工具或者MyEclipseUnicode編碼轉換工具 實現轉碼。
Struts2項目自動識別語言的依據:
是文件的名稱為何種語言
五Struts的上傳下載
上傳
註意: <interceptor-ref name="defaultStack"></interceptor-ref> name為攔截器中的固定名稱
<interceptor-ref name="fileUpload" > 也是為攔截器中固定名稱
為什麽要調用攔截器中這兩個名稱:因為一次攔截器達不到控制文件的大小類型我們需要再次調用攔截器中的上傳。
下載
1.<result type="stream">
<param name="contentDisposition">attachment;filename=${fileName}</param>
</result>
attachment:為下載的彈出層
filename=${fileName} : 為下載時候的文件名稱
註意:result 的type屬性必須為stream流對象 這樣可以是後臺默認執行 getInputStream
2.public InputStream getInputStream()throws Exception{
}
註意:方法名為固定寫法
返回值必須為流對象行使 這樣子可以使用方法被默認執行
2017-08-0818:13:42
struts2相關簡單介紹