strutS類型轉(zhuǎn)換

strutS類型轉(zhuǎn)換

ID:43352269

大?。?05.50 KB

頁數(shù):24頁

時間:2019-10-08

strutS類型轉(zhuǎn)換_第1頁
strutS類型轉(zhuǎn)換_第2頁
strutS類型轉(zhuǎn)換_第3頁
strutS類型轉(zhuǎn)換_第4頁
strutS類型轉(zhuǎn)換_第5頁
資源描述:

《strutS類型轉(zhuǎn)換》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫

1、Struts—第四章Struts類型轉(zhuǎn)換續(xù)1回顧Struts2有幾種類型轉(zhuǎn)換Struts2在什么情況下需要自定義類型轉(zhuǎn)換Struts2如何進行自定義類型轉(zhuǎn)換回顧新的要求要求在input.jsp頁面中增加三個點的輸入,如何實現(xiàn)?解決辦法(Converter工程)在input.jsp頁面中增加另兩個point文本框在PointAction中增中這兩個點的映射在屬性文件中增加這兩個屬性的映射在out.jsp文件中增加這兩個點的輸出新的問題如果此時有兩個頁面input.jsp及l(fā)ogin.jsp都需要有Point的輸入,如何處理?解決辦法1增加另一個Action;在該

2、Action路徑下創(chuàng)建一個相對于這個action的屬性文件優(yōu)點:可以對前面的信息進行復用,簡單易行缺點:如果action很多的話,會以增加很多文件解決辦法2使用全局類型轉(zhuǎn)換類型轉(zhuǎn)換局部類型轉(zhuǎn)換(針對單個action來進行的)全局類型轉(zhuǎn)換(針對工程來進行的)注冊自定義類型轉(zhuǎn)換器注冊自定義類型轉(zhuǎn)換器有兩種方法局部類型轉(zhuǎn)換器:只有特定的Action才可以使用注冊方法:在Action所在的包中建立properties文件,文件名格式:Action類名-conversion.properties,內(nèi)容如下:inver=com.aptech.conversition.In

3、tArrayConverter其中:inver是action屬性名,全局類型轉(zhuǎn)換器:所有Action都可以使用注冊方法:在classpath下建立名為xwork-conversion.properties的文件,內(nèi)容如下:目標類型(全限定名)=轉(zhuǎn)換器全限定名9使用全局類型轉(zhuǎn)換(重點)屬性文件的要求:位置上:在struts.xml文件同一路徑下創(chuàng)建屬性文件文件名稱:xwork-conversion.properties文件內(nèi)容要轉(zhuǎn)換的類=實現(xiàn)類型轉(zhuǎn)換的類例:com.test.bean.Point=com.test.converter.PointActionCon

4、verter注意:所有類名要寫全稱即包名+類名屬性文件的注釋#思考,上一節(jié)課如何實現(xiàn)轉(zhuǎn)換類?publicclassPointActionConverterextendsDefaultTypeConverter{publicObjectconvertValue(Mapcontext,Objectvalue,ClasstoType){if(Point.class==toType){Pointp=newPoint();String[]str=(String[])value;String[]param=str[0].split(",");intx=Integer.pa

5、rseInt(param[0]);inty=Integer.parseInt(param[1]);p.setX(x);p.setY(y);returnp;}if(String.class==toType){Pointp=(Point)value;intx=p.getX();inty=p.getY();Stringresult="x="+x+"y="+y;returnresult;}returnnull;}}更簡單的辦法使用StrutsTypeConverter抽象類PointActionConverter2.javapublicclassPointAction

6、Converter2extendsStrutsTypeConverter{publicObjectconvertFromString(Maparg0,String[]arg1,Classarg2){Pointpoint=newPoint();String[]param=(String[])arg1[0].split(",");intx=Integer.parseInt(param[0]);inty=Integer.parseInt(param[1]);point.setX(x);point.setY(y);returnpoint;}PointActionCon

7、verter2.javapublicStringconvertToString(Maparg0,Objectarg1){Pointpoint=(Point)arg1;intx=point.getX();inty=point.getY();Stringresult="x="+x+"y="+y;returnresult;}}上面方法有什么好處?不需要自己做判斷,是String到自定義類還是自定義類到String直接重寫兩個方法即可新需求publicclassPointActionextendsActionSupport{Pointpoint;Pointpoint2

8、;Pointpoint3;intage

當前文檔最多預覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當前文檔最多預覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學公式或PPT動畫的文件,查看預覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負責整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內(nèi)容,確認文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。