調(diào)結(jié)者的action請求 |
StrutsPrepareFilter類在處理request請求的時(shí)候,需要用到一個(gè)叫PrepareOperations類的幫忙。PrepareOperations類可以說是StrutsPrepareFilter類和Dispatcher類的中間人。PrepareOperations類大部分的工作都是通過Dispatcher類完成的。先讓我們看一段代碼。如下
StrutsPrepareFilter類:
public void init(FilterConfig filterConfig) throws ServletException { InitOperations init = new InitOperations();//用于初始化相關(guān)的功能操作。你可以理解為工具類一樣子。 Dispatcher dispatcher = null;//這個(gè)類相當(dāng)?shù)闹匾?。他的作用連接著StrutsExecuteFilter。這里可以命名為調(diào)結(jié)者。 try { FilterHostConfig config = new FilterHostConfig(filterConfig);//這里可以理解為把filterConfig在進(jìn)行封裝FilterHostConfig更為主便操作和理解。 init.initLogging(config);//獲取名為loggerFactory的參數(shù),并實(shí)例化這個(gè)類。一般為去用戶自定義日志。 dispatcher = init.initDispatcher(config);//初化調(diào)結(jié)者。這里是重要。 prepare = new PrepareOperations(dispatcher); this.excludedPatterns = init.buildExcludedPatternsList(dispatcher);//加載排除在內(nèi)的action的正則表達(dá)式 &n