程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> JSP編程 >> 關於JSP >> JBuilder2005實戰JSP之切換控制(3)

JBuilder2005實戰JSP之切換控制(3)

編輯:關於JSP

由於在login.jsp(SUN企業級應用的首選)的表單中通過action屬性指定switch.jsp(SUN企業級應用的首選)為響應的jsp(SUN企業級應用的首選)文件,當用戶在login.jsp(SUN企業級應用的首選)中選定登錄用戶,輸入密碼提交表單後,客戶端將向服務器發送一個HTTP請求,服務器即調用switch.jsp(SUN企業級應用的首選)來響應這個請求。

  表單中用戶名和密碼兩組件的數據將通過HTTP請求傳給服務器的switch.jsp(SUN企業級應用的首選),服務器將這些信息封裝在request對象中傳給switch.jsp(SUN企業級應用的首選),所以switch.jsp(SUN企業級應用的首選)可通過request.getParameter(String paraName)來獲取這兩個值。

String userId = request.getParameter("userId");
String password = request.getParameter("password");
  試想如果login.jsp(SUN企業級應用的首選)的表單有10個以上的數據組件,則在switch.jsp(SUN企業級應用的首選)中必須通過相應數目的request.getParameter()方法獲取其值。此外,如果這些數據不是字段串類型,而是整數或浮點數,由於request.getParameter()方法返回的值都是String,還必須進行類型的轉換,這種工作不但單調乏味,還容易出錯。

  jsp(SUN企業級應用的首選)允許你通過Bean以映射的方式接收網頁表單的數據,Bean以這個規則映射表單的數據:Bean屬性名=表單數據組件名,也即所有和Bean屬性名相同的表單數據域被自動填充到Bean中,並且完成數據類型的轉換。如login.jsp(SUN企業級應用的首選)的表單中有兩個數據組件,一個名為userId,另一個是password,定義一個擁有相同名的userId和password屬性的User.java Bean,這個Bean將可以自動接收表單中的兩個數據組件值。

  編寫User.java

  我們先來編寫這個User.java的Bean,在工程中創建User.java,其代碼如下所示:

  代碼清單 7 User.java

1. package bookstore;
2.
3. public class User
4. {
5. private String userId;//用戶Id
6. private String password;//密碼
7. private String userName;//用戶名
8. public String getPassword() {
9. return password;
10. }
11. public String getUserId() {
12. return userId;
13. }
14. public String getUserName() {
15. return userName;
16. }
17. public void setPassword(String password) {
18. this.password = password;
19. }
20. public void setUserId(String userId) {
21. this.userId = userId;
22. }
23. public void setUserName(String userName) {
24. this.userName = userName;
25. }
26. }
  除userId和password兩屬性名,還有一個用戶名屬性userName,這個屬性的值不是從login.jsp(SUN企業級應用的首選)的表單接收的,當用戶名密碼驗證正確後,從數據表T_USER表中獲取用戶名保存在這個屬性中,以便其他地方引用,保存並編譯這個類。

  提示:

  你可以通過JBuilder的Bean Express工具快速創建User.java的代碼,在一般情況下,你應該通過Bean Express來創建Bean的屬性,這樣不但自動產生get/set的屬性訪問方法,還保證了Bean命名規范。

  編寫頁面程序

  在創建User.java 的Bean後,我們著手創建switch.jsp(SUN企業級應用的首選),在switch.jsp(SUN企業級應用的首選)中引用這個Bean。

  通過File->New..->Web->雙擊jsp(SUN企業級應用的首選)圖標啟動創建jsp(SUN企業級應用的首選)向導。

  1.指定swith.jsp(SUN企業級應用的首選)名字


圖 10 指定switch.jsp(SUN企業級應用的首選)的名字
  一直按Next到向導的第3步。

  2.引用User.java Bean


圖 11 指定jsp(SUN企業級應用的首選)中引用Bean
  點擊Add Bean...按鈕,彈出Select a Class對話框,在對話框中選擇bookstore.User類,如下圖所示:


圖 12 選擇類作為Bean
  按OK後,返回到向導第3步的對話框,此時對話框的Bean列表中多了一行記錄,可以在ID欄中為Bean指定一個名字,在Scope中指定Bean的作用域,如下圖所示:

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved