blogjava's web log ...
?
今天研究了一下JpetStore源代碼 ,發(fā)現(xiàn)它的開發(fā)strust模式和我們以往開發(fā)的模式完全不同,所有的strust類都繼承org.apache.struts.beanaction.BaseBean
仔細(xì)研究BeanAction類,發(fā)現(xiàn)它其實(shí)是一個(gè)通用類,利用反射原理,根據(jù)URL來決定調(diào)用formbean的哪個(gè)方法!
一個(gè)簡單的例子
說明|:Struts-config.xml的配置里有3種映射方式,來告訴BeanAction把控制轉(zhuǎn)到哪個(gè)form bean對象的哪個(gè)方法來處理。<action name="testBean" path="/test/saveUser" type="org.apache.struts.beanaction.BeanAction">????? <forward name="success" path="/success.html" />??? </action>此種方式表示,控制將被轉(zhuǎn)發(fā)到"testBean"這個(gè)form bean對象 的"savaUser"方法(行為)來處理。方法名取"path"參數(shù)的以"/"分隔的最后一部分。parameter="*"
此種方式表示,form bean上沒有任何方法被調(diào)用。如果存在"name"屬性,則struts把表單參數(shù)等數(shù)據(jù)填充到form bean對象后,把控制轉(zhuǎn)發(fā)到"success"。否則,如果name為空,則直接轉(zhuǎn)發(fā)控制到"success"。這就相當(dāng)于struts內(nèi)置的org.apache.struts.actions.ForwardAction的功能前臺(tái)調(diào)用
posted on 2006-05-30 00:09 record java and net 閱讀(837) 評論(3) 編輯 收藏 所屬分類: struts
:):) 您這篇文章我也要了:p 轉(zhuǎn)ITPUB論壇去:P 您要是不愿意,要跟我說一聲哦:P 回復(fù) 更多評論
同道中人.. 回復(fù) 更多評論
這篇文章我看了,對我有用,謝謝你啦. 回復(fù) 更多評論