學習來源: http://blog.csdn.net/shb_derek1/article/details/19924529
http://bbs.csdn.net/topics/390626032?page=1
1. 問題
http://192.168.120.203:7003/irm/btsConfigPage!epathNewPage.html?taskName=ECircuitDispatch_ConfigTask
初次遇到這種URL中帶有'!'的情況,所以就查了下,先解釋他的含義好了:
首先,要明確這個是struts2中,由前台submit后,查找對應Action及Action中方法,這一過程的。
......./btsConfigPage ! epathNewPage.html
'btsConfigPage'表示:<action>節點的name屬性的值;
'epathNewPage'表示:該次事件所要執行的Action類中的方法名。
原因:一般<action>節點會設置method屬性,來指定進入相應Action實體類后,要執行哪個方法。為了少寫一些Action類,就會將多個方法寫進同一個Action,那么如何確定執行這個Action里面的哪個方法呢?
‘!’的功能即是對這種問題的解決:感嘆號的左邊是具體Action類在配置文件中的名字(Action的定位),感嘆號的右邊指定調用的方法(Action中方法的定位)。