struts的具體執行過程

2021-05-25 05:12:29 字數 1875 閱讀 2776

struts有乙個**控制器actionservlet,負責處理使用者的url請求,actionservlet在web.xml檔案中配置,它繼承了httpservlet,其實就是乙個普通的servlet。actionservlet中有兩個方法,如下:

process方法繼續呼叫requestprocessor 的process(request, response)方法,process的部分源**如下:

接著是formbeanconfig config = moduleconfig.findformbeanconfig(name);

public formbeanconfig findformbeanconfig(string name) else

return (instance);

}先在request和session找下是否存在這個formbean,如果有就直接返回。如果instance為空,就繼續建立createactionform(config, servlet);

public static actionform createactionform(formbeanconfig config, actionservlet servlet)

else

actionform form = null;

if (obj instanceof actionform) else 

return form;

通過動態**得到乙個formbean。

return (instance);

返回乙個loginaction例項。

這裡直接呼叫了action類的execute方法,返回乙個actionforward,actionforward類裡存放著對應標籤下的所有的forward資訊。最後執行processforwardconfig(request, response, forward);

分兩種情況進行**,一種是: response.sendredirect(response.encoderedirecturl(uri));

另二種是:doforward(uri, request, response);該方法裡主要的兩句**是:

requestdispatcher rd = getservletcontext().getrequestdispatcher(uri);

rd.forward(request, response);

over!

**

new運算的具體執行過程

function person name,age var p1 new person 小明 20 console.log p1 1.建立乙個空物件 var obj new object 2.讓person中的this指向obj,並執行person的函式體 var result person.call...

C 編譯,執行過程 具體解釋。

要更深入了解c 必需要知道乙個程式從開始到結束都幹了些什麼,怎麼幹的。所以我從c 編譯到執行過程,解析下程式是怎麼跑的。首先,初略的說一下之前c 的編譯過程。c 編譯過程包含預編譯 彙編 編譯 鏈結。稱為乙個可執行檔案。windows平台下為.exe檔案 預編譯主要展開包括的標頭檔案,巨集定義等操作...

Struts核心元件和執行過程

使用struts開發的時候,只需要關注兩類元件 action bean元件和form bean元件 這樣還不夠,還需要了解struts核心元件和內部原理,才能保證我們在編寫struts應用時輕鬆解決各種問題。struts核心元件和執行過程 struts應用中包含3個元件 控制器元件 模型元件個檢視元...