| 在struts2 struts.xml 配置中 <struts> <package name="caixuedong" extends="struts-default" namespace="/core"> <action name="greeting" class="com.tarena.struts2.action.GreetingAction" > <result name="success">/core/greeting.jsp </result> </action> </package> </struts> name="caixuedong" namespace="/core" name="greeting" 這三個(gè)怎么去理解啊 ---------------------------- 1.package中的name只是一個(gè)標識,你可以隨意命名; 2.action中的name對應你頁(yè)面中的一個(gè)action跳轉,比如你頁(yè)面有個(gè)表單提交: <form action="struts.xml中action里的name"> 3.namespace是用于區分包中相同的類(lèi),如果沒(méi)寫(xiě),說(shuō)明該包為默認空間,如果寫(xiě)了(如你的這個(gè)例子),那么就說(shuō)明包c(diǎn)aixuedong的空間為/core。 namespace實(shí)際上是在包的基礎上對Action的進(jìn)一步組織和劃分,可以解決Action重名問(wèn)題,因為在不同的命名空間中是可以有相同的Action名的,就好比一班有個(gè)叫張三的,二班也有個(gè)叫張三的,當我們呼叫某個(gè)張三時(shí),就得帶上“命名空間”,Action也是如此,例子的greeting就必須通過(guò) /core/greeting.action的方式來(lái)進(jìn)行調用。 greeting那個(gè)name就是Action的名字,相當于上個(gè)例子的“張三” 包的名字只是作為其他包引用本包的標記 |
聯(lián)系客服