Struts 請求資料自動封裝 型別轉換

2021-09-25 15:21:29 字數 2152 閱讀 3180

實現原理:引數***

< interceptor name="params" class="com.opensymphony.xwork2.interceptor.parametersinterceptor"/>
方式1:jsp表單資料填充到action中的屬性
register.jsp:
useraction類:

public class useraction

public void setpwd(string pwd)

public void setage(int age)

public void setbirth(date birth)

//處理註冊請求

public string register()

}

方式2:jsp表單資料填充到action的物件中的屬性
register.jsp:
user類:

public class user

public void setname(string name)

public string getpwd()

public void setpwd(string pwd)

public int getage()

public void setage(int age)

public date getbirth()

public void setbirth(date birth)

}

useraction類:

public class useraction

public void setuser(user user)

//處理註冊請求

public string register()

}

struts中,jsp提交的資料struts自動轉換為action中屬性的型別,對於基本資料型別以及日期型別會自動轉換。

日期型別只支援yyyy-mm-dd格式。如果需要其他型別,需要自定義型別轉換器:

struts轉換器api:

|--typeconverter		轉換器介面。

|-- defaulttypeconverter 預設型別轉換器類

|--strutstypeconvetter 使用者編寫的轉換器,繼承此類即可

區域性型別轉換器:

轉換器開發步驟:

寫轉換器類

配置轉換器類(告訴struts應用自己的轉換器類)

–>在同包的action目錄下,新建乙個properties檔案

–>命名規則:actionclassname-conversion.properties

舉例:cn.jjs.d_type.useraction-conversion.properties

內容user.birth=轉換器類全路徑(cn.jjs.d_type.myconverter)

總結:轉換器能否給其他action用?不能。

全域性型別轉換器

全域性轉換器:

//自定義型別轉換器

public class myconverter extends strutstypeconverter ;

/*** 把string轉換為指定的型別

* @param context 當前上下文環境

* @param values jsp表單提交的字串值

* @param toclass 要轉化為的目標型別

* @return

*/@override

public object convertfromstring(map context, string values, class toclass)

//判斷型別必須為date

if(date.class!=toclass)

//迭代,轉化失敗就繼續下乙個格式的轉換,轉化成功就直接返回

for(int i=0;i}

return null;

}@override

public string converttostring(map map, object o)

}

Struts核心業務之請求資料的自動封裝

請求資料的自動封裝 三種方法 1.ognl方式 2.params 3.action實現modeldriven介面 方法一 1.ognl方式 1.建立資料實體類 public class user public void setusername string username public strin...

封裝axios請求方法,Vue請求資料

npm install axios s axios內建了promise模組 const axios require axios axios.get user?id 12345 then function response catch function error finally function 傳...

C 使用WebRequest類請求資料

本文翻譯於 下列程式描述的步驟用於從伺服器請求乙個資源,例如,乙個web頁面或檔案。必須由uri標識的資源。從主機伺服器請求資料 1 建立乙個webrequest例項通過呼叫建立uri的資源。webrequest request webrequest.create note net 框架提供了特定於...