簡介: 文本主要介紹用myeclipse的struts designer(圖形化開發環境)開發一個簡單的使用者登入程式片段。 主要包括2個jsp檔案、一個ActionForm、一個Action等其它 userLogin.jsp(使用者登入及錯誤提示頁面) userLoginSuccess.jsp(提示登入成功頁面) UserLoginForm.java(ActionForm,存放使用者提交資訊) UserLoginAction.java(Action,簡單的處理使用者登入事件) |
| |
| 開始吧 |
首先我們先建立一個j2ee的web project.1:
|
點擊next,Project name輸入LoginDemo,其餘保持預設,點擊finish.
在package explorer下,就可以看到我們的項目了,然後給這個項目添加Struts架構必要的檔案.在我們項目名上點擊右鍵,選擇MyEclipes --> Add Struts Capabilities...彈出對話方塊圖2:
其中Struts config path就是我們的struts設定檔,URL pattern我們選擇*.do,Default application resource為我們預設的資源檔地方,你可以選擇它的儲存位置,我們在這裡保持預設。點擊Finish後,項目結構類似於圖3:
現在就來開始我們的例子吧。首先修改/WEB-INF/web.xml檔案,為其添加標籤庫(在使用中發現,不添加也能成功。但為了保持書上一致,還是添加安全些。hoho~~)將下面代碼添加至 </webapp> 上面:
<jsp-config>
<taglib>
<taglib-uri>/tags/struts-bean</taglib-uri>
<taglib-location>/WEB-INF/struts-bean.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/tags/struts-html</taglib-uri>
<taglib-location>/WEB-INF/struts-html.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/tags/struts-logic</taglib-uri>
<taglib-location>/WEB-INF/struts-logic.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/tags/struts-nested</taglib-uri>
<taglib-location>/WEB-INF/struts-nested.tld</taglib-location>
</taglib>
</jsp-config>
完成後,開啟struts-config.xml檔案,點擊這個介面左下角的Design進入可視化設計介面。有沒有注意右邊的Palette :) 點擊它,讓我們來開始我們的jsp頁面設計。我們先建立userLoginSuccess.jsp檔案,為啥先建這一個呢?等下就知道了,在myeclipse中可以一次性把我們的Action,ActionForm,Jsp檔案一次建好(將三個有關聯的檔案等下建立)。
點擊Palette面版上的建立JSP檔案表徵圖,彈出建立JSP檔案面板。圖4:
在File Name裡輸入userLoginSuccess.jsp,Template to use選擇2] Standard JSP using Struts 1.1,點擊Finish完成。 完成後,struts-config.xml檔案自動被更新,可視化界在上也出現了剛建立的JSP模組。建立的jsp檔案也被開啟了。 覆蓋所有的<%@ taglib ...... 為我們開始在/WEB-INF/web.xml中定義的: <%@ taglib uri="/tags/struts-html" prefix="html"%> <%@ taglib uri="/tags/struts-bean" prefix="bean"%> <%@ taglib uri="/tags/struts-logic" prefix="logic"%> 然後在<body></body>中添加: Hello <bean:write name="userName" scope="request" /> . 這裡將request中的屬性userName輸出在頁面上,所以等下我們在UserLoginAction中,登入成功後要設定一個相關屬性。 |
OK,下面來開始我們最後三個檔案的設計吧。在Struts-config.xml的Design模式中,在畫版的空白地區點右鍵,選擇New --> New Form, Action and JSP 彈出ActionForm的選項面板,我們按圖上輸入相關值,圖5:
|
在Optional Details的Form Properties選項卡,點add為這個ActionForm添加相關值,在這個登入樣本中,將添加兩個屬性userName和password,圖6:
在添加password時,注意將JSP input type 下拉框選擇password.
完成這步後,我們就將ActionForm設計完成。
接下來選擇 Optional Details的JSP選項卡,我們選中Create JSP form? 這一步myeclipse將為我們建立一個簡單的與使用者互動的登入頁面。保持內容和圖7一樣。圖7:
因為我們這隻是簡單的示範一個登入片段,所以不用驗證使用者資訊是否合法,所以將 Option Details的method選項卡的建立方法去掉,8:
點Next,進入Action選項面板.將Option Details的Form選項卡中Validate Form取消選擇,9:
然後在Forwards選項卡中點add添加成功和失敗返回的頁面.10:
點擊Finish完成。在Struts-config.xml的Design中,可以看到圖11所示:
最後,簡單的修改一下userLogin.jsp,將所有<%@ taglib ...%>替換為:
<%@ taglib uri="/tags/struts-html" prefix="html"%>
<%@ taglib uri="/tags/struts-bean" prefix="bean"%>
修改UserLoginAction中的execute片段為如下所示,圖12:
OK,完成。。。下面就部暑項目,測試。。。 |
像為項目添加Struts架構一樣,在項目名上右擊,選擇MyEclipse --> Add and Remove Project development. 在彈出對話方塊上,單擊add ,在彈出的 New Deployment 對話方塊上,Server選Tomcat5,點擊Finish完成部署,13:
| 在用瀏覽器上開啟:http://127.0.0.1:8080/LoginDemo/userLogin.jsp |
| 輸入密碼123456,使用者名稱EricHe。顯示成功: |
| 如果輸錯,或不輸入,則無反映又回到當前登入頁面(因為我們沒有設定錯誤資訊)。 |
|