1 頁(yè)面上通過(guò)url觸發(fā),比如<a href="credit_createCreditUI.action" >觸發(fā)</a>
分析這個(gè)url,可以看出,觸發(fā)的功能代碼是:在xxxStruts.xml配置里面<action name="credit_*" class="creditAction" method="{1}">對(duì)應(yīng)的處理類class="creditAction"當(dāng)然這個(gè)由spring來(lái)管理,查看xxxBeans.xml可 以看到具體是那個(gè)類。那么遇到這種觸發(fā),就知道,這個(gè)請(qǐng)求是進(jìn)入到類creditAction里面的createCreditUI這個(gè)方法來(lái)處理的,我們 看下這個(gè)方法
2
public final String createCreditUI()
{
log.info("創(chuàng)建貸方傳票頁(yè)面");
log.warn(LogTool.userLog() + "進(jìn)入貸方傳票頁(yè)面。");
return "createCreditUI";
}
{
log.info("創(chuàng)建貸方傳票頁(yè)面");
log.warn(LogTool.userLog() + "進(jìn)入貸方傳票頁(yè)面。");
return "createCreditUI";
}
可以看到這個(gè)類只是簡(jiǎn)單做一個(gè)地址跳轉(zhuǎn),跳轉(zhuǎn)到真正處理這個(gè)貸方傳票的頁(yè)面return "createCreditUI";去。這里又涉及到了ssh中struts2的配置,我們?cè)谒膕truts.xml配置文件看下
3
<struts>
<package name="credit" namespace="/" extends="main">
<!-- 資料導(dǎo)出 -->
<action name="credit_*" class="creditAction" method="{1}">
<!-- 登錄超時(shí)和Session權(quán)限的攔截器棧 -->
<interceptor-ref name="sessionTimeOutStack" />
<result name="timeout">/timeout.jsp</result>
<result name="createCreditUI">/WEB-INF/report/credit_summons_UI.jsp</result>
<result name="checkCredit">/WEB-INF/report/credit_summons_print.jsp</result>
<result name="test">/WEB-INF/report/credit_summons_print_all.jsp</result>
<result name="error">/WEB-INF/merchant/ajaxDone.jsp</result>
<result name="success">/WEB-INF/merchant/ajaxDone.jsp</result>
</action>
</package>
</struts>
<package name="credit" namespace="/" extends="main">
<!-- 資料導(dǎo)出 -->
<action name="credit_*" class="creditAction" method="{1}">
<!-- 登錄超時(shí)和Session權(quán)限的攔截器棧 -->
<interceptor-ref name="sessionTimeOutStack" />
<result name="timeout">/timeout.jsp</result>
<result name="createCreditUI">/WEB-INF/report/credit_summons_UI.jsp</result>
<result name="checkCredit">/WEB-INF/report/credit_summons_print.jsp</result>
<result name="test">/WEB-INF/report/credit_summons_print_all.jsp</result>
<result name="error">/WEB-INF/merchant/ajaxDone.jsp</result>
<result name="success">/WEB-INF/merchant/ajaxDone.jsp</result>
</action>
</package>
</struts>
這樣,一個(gè)由頁(yè)面觸發(fā),到action類處理跳轉(zhuǎn)的流程就完成了。如果涉及到具體的功能處理或計(jì)算,也是寫在action類里面相應(yīng)的方法里,然后封裝好需要的bean或處理好相應(yīng)的sql,最后跳轉(zhuǎn)而已。