JSP中Beans 與 Forms處理機制
<HTML>
<BODY>
<FORM METHOD=POST ACTION="SaveName.jsp">
What's your name? <INPUT TYPE=TEXT NAME=username SIZE=20><BR>
What's your e-mail address? <INPUT TYPE=TEXT NAME=email SIZE=20><BR>
What's your age? <INPUT TYPE=TEXT NAME=age SIZE=4>
<P><INPUT TYPE=SUBMIT>
</FORM>
</BODY>
</HTML>
為了收集資料,我們要定義一個Java類,使它有“username”、“email”、“age”的區域,並且我們要提供“setter”方法“setUsername”、“setEmail”和“setAge”。這個“setter”方法只是一個以“set”開始其後是區域名的一種方法。區域名字的第一個字母要用大寫的。所以如果區域為“email”,它的“setter”方法就為“setEmail”。同樣的,“Getter”方法也類似定義,它只不過是用“get”來代替“set”而已。並且要使得setters和getters必須為公共的(public)。例如:
public class UserData {
String username;
String email;
int age;
public void setUsername( String value )
{
username = value;
}
public void setEmail( String value )
{
email = value;
}
public void setAge( int value )
{
age = value;
}
public String getUsername() { return username; }
public String getEmail() { return email; }
public int getAge() { return age; }
}
一旦你定義了這個類,再編譯它,並且將它放置於網路伺服器的類路徑中。這個伺服器同樣要定義一個特殊的目錄來放置bean類。如果你是使用Blazix你可以將它們放置到“classes”目錄中。如果你必須改變類路徑並且伺服器正在執行,那麼網路伺服器就必須停止並重新啟動。
下面我們來修改一下“SaveName.jsp”以使用bean來收集資料:
<jsp:useBean id="user" class="UserData" scope="session"/>
<jsp:setProperty name="user" property="*"/>
<HTML>
<BODY>
<A HREF="NextPage.jsp">Continue</A>
</BODY>
</HTML>
這裡所有我們需要作的事情是增加一個jsp:useBean標誌以及jsp:setProperty標誌。這個useBean標誌是在session中查詢“UserData”的例項。如果例項被找到了,它就將更新舊的例項;如果例項沒有被找到,它就將建立一個UserData新的例項(UserData的例項被稱為bean),然後將它放置於session中。而setProperty標誌會自動收集輸入的資料,並匹配bean方法的名字,在將資料放置於bean中。
下面修改NextPage.jsp以從bean取出資料:
<jsp:useBean id="user" class="UserData" scope="session"/>
<HTML>
<BODY>
You entered<BR>
Name: <%= user.getUsername() %><BR>
Email: <%= user.getEmail() %><BR>
Age: <%= user.getAge() %><BR>
</BODY>
</HTML>
這裡要注意useBean標籤被重複使用了。這個bean是作為類“UserData”的變數的。由使用者鍵入的資料都被收集在bean中。我們可以不需要“SaveName.jsp”,“GetName.html”的目標就是“NextPage.jsp”,並且只要我們增加一個jsp:setProperty 標誌資料同樣有效。在下一個教程中,我們要使用SaveName.jsp作為一個錯誤處理並自動連線到NextPage.jsp上,換句話說,它叫使用者校正錯誤的資料。
相關文章
- java中的垃圾處理機制Java
- Redis中的事務處理機制分析與總結Redis
- mysql事務處理與鎖機制MySql
- Java 中的異常處理機制Java
- javascript中的錯誤處理機制JavaScript
- 異常處理機制(二)之異常處理與捕獲
- C#中的異常處理機制C#
- 處理JSP中的中文 (轉)JS
- 異常處理機制
- Linux訊號機制與訊號處理Linux
- Service初探與非同步訊息處理機制非同步
- Looper中的訊息佇列處理機制OOP佇列
- Java異常處理機制Java
- redis的事件處理機制Redis事件
- Java——事件處理機制概要Java事件
- Laravel Sessionid 處理機制LaravelSession
- C#事件處理機制C#事件
- JSP 異常處理如何處理?JS
- Android中的非同步訊息處理機制Android非同步
- 08.異常處理機制
- C++異常處理機制C++
- java異常的處理機制Java
- Java 的異常處理機制Java
- Linux訊號處理機制Linux
- [php]php錯誤處理機制PHP
- Python異常處理機制Python
- 8.異常處理機制
- 深入理解C++中的異常處理機制C++
- JSP 日期處理概述JS
- JSP Session處理 (轉)JSSession
- C介面與實現—C裡面的異常處理機制
- 異常處理機制(一)之throw與throws的區別
- python中的五種異常處理機制介紹Python
- goang 錯誤&異常處理機制Go
- Nginx 超時事件的處理機制Nginx事件
- SpringMVC異常的處理機制SpringMVC
- Asp.Net 異常處理機制ASP.NET
- Android 觸控事件處理機制Android事件