①**②重定向 **到自己的action type變為chain
targetaction_login
/③**自己的action
targetaction
/④不跳轉 接受ajax請求
1)適用原生的servletapi
actioncontext在strus2中 我們把他叫做資料中心
request 原生物件
response 原生物件
session 原生物件
session context 原生物件
request 域 map struts2不建議使用,如果要用就用actioncontext物件
session 域 map
attr 域 map
actioncontext生命週期:
所有的servelt物件都存在,他的生命週期是隨其中最短的人而建立和銷毀。也就是request物件。
每次請求到來action content都會重新建立。
所以他解決了執行緒安全,使用serveltapi響應請求
首先獲得response物件(兩種方法)然後回到原生態servelt響應中
action方法中的返回值必須是none(如果設定為none那麼在strits.xml重就不用寫了)
2)stream
①在action類中建立乙個inputstream物件
②給這個物件新增乙個get方法
③strtus.xml中的result中的標籤中設定type = stream
④action最總可以將json字串轉化為inputstream流
3)使用json外掛程式
①導包
②建立乙個action類
定義你想要返回的json的鍵名
生成get set 方法
然後在action訪問的方法為這個json鍵名的物件進行賦值
③配置struts.xml檔案
重新建package extends 繼承不能寫 struts-default 要寫 json-default(在struts-json-plugin包中)
action不變
result name 屬性不變type 屬性名變為json(在strut-json-plugin 的struts-plugin.xml中)
原因:struts2是執行緒安全
在action類中直接定義屬性名 然後設定
get set
方法在訪問的地方傳入對應的屬性名和值,struts2自動接受
定義乙個bean類 在
action
定義乙個物件
並且加上get set 方法
並且再去請求的地方
請求引數鍵值有規定,必須按照規定的物件名
屬性名傳遞
實現moduledriver介面
重寫方法
在action 中建立乙個
user
物件,並且要
new物件
請求的地方還是按照物件屬性傳遞
struts2頁面配置
建立兩個action 方法返回值相同,要到達的頁面也相同,這個時候可以採用全域性結果頁面配置。如下 hello.jsp 如果action標籤下面也配置了區域性的result,即區域性變數和全域性變數同時存在的時候,以區域性變數的結果為準。result 標籤中type屬性值 1 如果配置結果是轉向別的...
Struts2頁面取值問題
struts2頁面取值 後總結出了4種取值得辦法 1 struts2頁面開發中常用標籤使用說明 1.1 往action裡傳值的使用方式 a.username屬性需要在訪問的action中提供相應的屬性,並有set get方法。b.可以不在訪問的action中提供相應的屬性,用request.getp...
Struts2 頁面資料處理
1 輸出session中的值 a.s property value session key b.2 獲取session中的值後判斷 s if test session key null 3 輸出action中的屬性值 s property value property 4 輸出國際化檔案中的值 a....