Skip to main content

第一個 Struts 程式

Popularity Report

Total Popularity Score: 0

Loading...
Loading...
Loading...
Loading...
Loading...
Loading...

Rank

URL Tag Cloud

Bookmark History

Saved by 2 people (0 private), first by anonymouse user on 2007-12-31


Public Sticky notes

在Struts中,擔任Controller角色的是ActionServlet,理想上所有客戶端請求都透過它來完成轉發,必須在/WEB- INF/web.xml中設定

Highlighted by azureluv

<servlet>
        <servlet-name>action</servlet-name>
        <servlet-class>
            org.apache.struts.action.ActionServlet
        </servlet-class>
        <init-param>
            <param-name>config</param-name>
            <param-value>
                /WEB-INF/conf/struts-config.xml
            </param-value>
        </init-param>
        <load-on-startup>2</load-on-startup>
    </servlet>

    <!-- Standard Action Servlet Mapping -->
    <servlet-mapping>
        <servlet-name>action</servlet-name>
        <url-pattern>*.do</url-pattern>
    </servlet-mapping>

Highlighted by azureluv

< action>中設定了path為/hello,這表示請求的資源若是/hello.do,則會呼叫HelloAction 來處理這個請求(type屬性設定的),<forward>設定則是HelloAction處理完畢之後的轉發對象,一個< action>中可以有多個 <forward>,在Action物件中將根據<forward>上的name來查找並返回對應的ActionForward 物件,ActionServlet會根據 Action 傳回的ActionForward來將請求轉發至指定的對象。

Highlighted by redertseng

在Web MVC中,使用者的請求相關資訊就到Action中就要結束了,所有的相關訊息必須複製為資料傳輸物件再設定給業務物件,而不是直接將請求相關物件或訊息 直接傳遞至業務層,這樣作可以使得Web層不會與接下來的業務層緊密耦合。另一方面,View層的資料要透過資料Model物件來取得,而不是直接從使用 者的請求物件中獲得。

Highlighted by redertseng