JBuilder2005實戰JSP之切換控制

來源:互聯網
上載者:User
由於在login.jsp的表單中通過action屬性指定switch.jsp為響應的JSP檔案,當使用者在login.jsp中選定登入使用者,輸入密碼提交表單後,用戶端將向伺服器發送一個HTTP請求,伺服器即調用switch.jsp來響應這個請求。

  表單中使用者名稱和密碼兩組件的資料將通過HTTP請求傳給伺服器的switch.jsp,伺服器將這些資訊封裝在request對象中傳給switch.jsp,所以switch.jsp可通過request.getParameter(String paraName)來擷取這兩個值。

String userId = request.getParameter("userId");
String password = request.getParameter("password");

   試想如果login.jsp的表單有10個以上的資料群組件,則在switch.jsp中必須通過相應數目的request.getParameter()方法擷取其值。此外,如果這些資料不是欄位串類型,而是整數或浮點數,由於request.getParameter()方法返回的值都是String,還必須進行類型的轉換,這種工作不但單調乏味,還容易出錯。

  JSP允許你通過Bean以映射的方式接收網頁表單的資料,Bean以這個規則映射表單的資料:Bean屬性名稱=表單資料群組件名,也即所有和Bean屬性名稱相同的表單資料域被自動填滿到Bean中,並且完成資料類型的轉換。如login.jsp的表單中有兩個資料群組件,一個名為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的表單接收的,當使用者名稱密碼驗證正確後,從資料表T_USER表中擷取使用者名稱儲存在這個屬性中,以便其他地方引用,儲存並編譯這個類。

提示:

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

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.