最近剛開始學struts,打算把學習程序和自己的一些心得記下來,一方面激勵自己每天都要收穫一點點,另一方面還請各位高手多多指點,不管是技術上的還是方法上的。
我也使從最簡單也是最經典的東西做起的,簡單使用者登陸,個人覺得這個例子最有代表性了。
一:建兩個jsp檔案,用於頁面的顯示
login.jsp(登陸頁面)
---------------------
<%@ page contenttype="text/html; charset=gbk" %>
<%@ taglib uri="/tags/struts-bean" prefix="bean" %>
<%@ taglib uri="/tags/struts-logic" prefix="logic" %>
<%@ taglib uri="/tags/struts-html" prefix="html" %>
<%@ taglib uri="/tags/struts-nested" prefix="nested" %>
這個頁面完成使用者表單填寫,並提交使用者資訊。
注意這裡的表單元素text和password的property屬性必須同form類中的屬性名字一樣,因為在表單提交之後,struts按照表單元素的內容,自動給form類中的相應字段一一賦值。
index.jsp(登陸成功之後顯示頁面)
------------------------------
<%@page pageencoding="gbk" contenttype="text/html; charset=gbk" %>
succ!
這個頁面中只簡單的顯示登陸成功的資訊。
二:編寫loginactionform類
package test;
import .apache.struts.action.actionform;
public class loginactionform extends actionform
public void setname(string name)
public string getpassword()
public void setpassword(string password)
} 此類中應注意的是其name和password屬性必須和login.jsp檔案中的一樣。
三:編寫loginaction類
此類是struts中最重要的類,主要完成業務邏輯的處理。在這裡進行了簡單的判斷,如果符合使用者名稱和密碼相等這一條件,即轉向登陸成功頁面,否則轉向登陸失敗頁面
四:配置struts-config.xml檔案
在這個檔案中,需要填寫的配置為
1:這個表單bean完成將使用者提交的表單內容按照各個元素給bean的屬性賦值
2:這裡的action標籤中path屬性被用於同action的請求相匹配。
在login.jsp中,action="loginaction.do",則與之匹配的action就是loginaction
name屬性表明呼叫的actionform類,在這裡當然就是表單bean
forward標籤說明了轉向的匹配,在loginaction中
if(name.equals(password))
return(arg0.findforward("succ"));
else
return(arg0.findforward("fail"));
其中的"succ","fail"就對應於forword的name屬性,而path屬性則指明了轉向頁面存放的路徑。
這樣,第乙個struts程式就完成了,當登陸時,輸入使用者名稱和密碼相同,顯示succ!提示資訊,否則,返回原登陸頁面。
以上主要寫了一些我在做的時候注意到的一些問題,也可能是初學者最容易犯的一些錯誤。
end!
我的第乙個Struts(二)
前幾天寫了篇關於使用者登陸的簡單的struts例子,覺得有必要更進一步了解一下struts的工作流程,這裡還是以上乙個例子為例,說明一下伺服器執行表單驗證的流程。嘿嘿,這個我也是剛知道的,有什麼寫錯的地方還請多多指正 同時也希望對初學的朋友有一點點幫助。伺服器執行表單驗證的流程 action apa...
第乙個struts 程式 01
1 登入http struts.apache.org download 該資料夾下包含了基於 struts 2 的示例應用,這些示例應用對於學習者是非常有用的資料。docs 該資料夾下包含了 struts 2 的相關文件,包括 struts 2 的快速入門 struts 2 的文件,以及 api文件...
我的第乙個程式
我的第乙個vc程式終於寫完了,花了2周,之前從沒有用vc寫過程式,也沒讀過什麼程式,只是在看書,看了幾百頁 mfc windows程式設計 正好有個機會,老師讓寫個vc程式,就試著寫了。程式的功能是不同地方的access的更新的記錄整合到一台機子上的access中,支援斷網自動連線,用的是socke...