struts2 x自定義型別轉換

2021-07-12 00:56:13 字數 1726 閱讀 7046

struts2的型別轉換是基於ognl(物件影象導航語言)

1   ognl裡面有乙個介面typeconverter,該介面有乙個方法convertvalue,convertvalue該方法很複雜,裡面還有乙個預設實現類defaulttypeconverter,通過該類來實現型別轉換

typeconverter介面的實現類是defaulttypeconverter,必須實現convertvalue方法

2繼承strutstypeconverter,實現2個方法:convertfromstring(...)和converttostring(...)

ognl

步驟:1 定義乙個bean類,不需要任何繼承,例如:public class point{}

2 再定義乙個轉換類,需要繼承defaulttypeconverter,  eg:public class ponitconver extends defaulttypeconverter{}

3 區域性或者全域性properties, 區域性eg:point="point的類全名"

4 在action中定義乙個屬性

5 jsp頁面跳轉到action

1 定義乙個bean類,不需要任何繼承,例如:public class point{}

public class point 

public void setx(int x)

public int gety()

public void sety(int y)

@override

public string tostring()

}

2 再定義乙個轉換類,需要繼承defaulttypeconverter,  eg:public class ponitconver extends defaulttypeconverter{}

public class pointconver extends defaulttypeconverterelse if(totype==string.class)

return null;

}}

引數說明:

map context:配置的資訊

value:傳過來的引數

totye:需要轉換的型別

3 區域性或者全域性properties,

區域性eg:point="point的類全名":  有乙個pointaction,所以區域性properties的名稱為:pointaction-conversion.properties,必須和pointaction放在同乙個包下

point=com.amaker.conver.pointconver
全域性eg:放在src下面

com.awaker.actions.pointaction=com.awaker.conver.pointconver

4 在action中定義乙個屬性

public class pointaction extends actionsupport 	

point point;

public point getpoint()

public void setpoint(point point)

}

5 jsp頁面跳轉到action

Struts2 X自定義標籤(時間標籤)

最近專案中有這樣的需求,需要將普通的時間格式轉行成時間間隔模式,如 將2009 07 01 10 16 14這種格式變成 昨天21 45 26 格式,我思前想後,為了顯示的需要還是自定義個標籤較合理。現將方法跟大家分享,演算法不重要,重要的是自定義標籤的流程。我們分二步走 1.編寫自定義標籤類。2....

Struts2自定義型別轉換

在web應用中,頁面提交請求的引數都是字串型別的。但是在學習中,我們都是直接在action中按照需要來定義屬性的型別,比如private int age,也沒有出錯,還能正確執行,這是怎麼回事呢?這是由struts2的型別轉換框架默默的幫助我們完成的功能,只要使用者輸入的資料能合理的轉換為需要的屬性...

struts2 x的基本配置

1.先配置xml struts2 org.apache.struts2.dispatcher.ng.filter.strutsprepareandexecutefilter 2.在src目錄下面建立並配置struts.xml 之前要在window preference xmlcatalog中新增 w...