馬士兵struts2視頻教程第八十、八十一、八十二集

struts轉換:把字符串轉成特定類型,把特定類型轉成字符串

後臺向前臺頁面傳遞值,jsp顯示的時候會轉換類型

簡單類型轉換,直接在action中定義,然後get/set即可

複雜類型轉換:自定義類型轉換器

首先定義一個class,繼承DefaultTypeConverter類(實現了TypeConverter接口),然後重寫裏面的convertValue方法,兩個參數Object value(需要轉換的值),Class toType(需要轉換的類型),返回轉換結果(如果處理不了,return super.convertValue(value, toType)交給父類處理)

然後註冊到struts2裏面,纔可以使用。有三種註冊方式:

1、註冊給action:action名字-conversion.properties  必須和action放在一個包內

裏面定義action裏面定義的名字 = 對應轉換器的類 (遇到某個名字不能轉換,交給對應的類轉換)

2、全局轉換器:xwork-conversion.properties

裏面內容同上

3、註解

如果是List<自定義類>這種類型,則在轉換器的properties就不能寫變量名,需要寫類名 = 對應的轉換器

還有一種寫法就是繼承StrutsTypeConverter,convertFromString和convertToString,之前的DefaultTypeConverter是在一個方法裏做兩種轉換,StrutsTypeConverter做了擴展,

是從DefaultTypeConverter做的繼承並做了擴展,convertFromString是從字符串轉化成目標類型,convertToString是把目標類型轉化成字符串

如果遇到很複雜的,用request.setAttribute或session傳值


發佈了74 篇原創文章 · 獲贊 6 · 訪問量 12萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章