1. 程式人生 > >struts2相關簡單介紹

struts2相關簡單介紹

exceptio 1.2 ret image .cn 註意 head justify 結果類型

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

文件中繼承struts-default

2.Struts頁面操作:

2.1尋找到struts.xml中的result標簽中name屬性和後臺return配對後進行跳轉頁面。

2.2result的屬性:

重點介紹:

{ dispatcher :跳轉到一個指定的jsp頁面 , 在沒有設值type屬性的時候為默認屬性。

redirect:重定向,可以執行跳轉到一個url

  redirectAction:可以指定跳轉到一個action. 通常用這個。

}

其他:

1dispatcher [默認配置]
org.apache.struts2.dispatcher.ServletDispatcherResult

默認結果類型,用來呈現JSP頁面

2chain
com.opensymphony.xwork2.ActionChainResult
action和另外一個action鏈接起來

3freemarker
org.apache.struts2.views.freemarker.FreemarkerResult
呈現Freemarker模板

4httpheader
org.apache.struts2.dispatcher.HttpHeaderResult
返回一個已配置好的HTTP頭信息響應

5redirect
org.apache.struts2.dispatcher.ServletRedirectResult

將用戶重定向到一個已配置好的URL


6redirectAction
org.apache.struts2.dispatcher.ServletActionRedirectResult
將用戶重定向到一個已定義好的action

7stream
org.apache.struts2.dispatcher.StreamResult
將原始數據作為流傳遞回瀏覽器端,該結果類型對下載的內容和圖片非常有用

8velocity
org.apache.struts2.dispatcher.VelocityResult
呈現Velocity模板

9xslt
org.apache.struts2.views.xslt.XSLTResult
呈現XML到瀏覽器,該XML可以通過XSL模板進行轉換

10plaintext
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相關簡單介紹