1. 程式人生 > >Jsp頁面的幾種傳參方式

Jsp頁面的幾種傳參方式

1.JavaScript傳參:這種傳參方式用opener關鍵字, 可以實現跨頁傳參.其用法就是用opener關鍵字呼叫父窗體的一個元件.  舉例:   opener.myform.txt.value = document.myform.txt.value;
  優點:   簡單,對網路傳輸限制比較底.
  缺點:   不靈活,對與大量的傳參不現實,也不實際.2. " ? "傳參: 在傳遞地址的尾部加上? 後面跟引數的名字和其值,在另外一個Jsp頁面中就可以用request.getParameter("引數名字");獲取到傳遞的引數.3. session傳參:通常把它用來實現狀態維持.session中有2個引數,第一個為標識,第二個為值,形式("key","value") 如果你的思維敏捷,就能聯想到散列表,對它就是散列表的一種實現.  應用舉例:   session.setAttribute("login","ok"); session.getAttribute("login");
  優點:   不用關心是什麼資料型別,都可以放到session中,它以物件的形式儲存於散列表中.
  缺點:   session中把所有資料當成物件來存取,所以每次我們用它的時候都要把型別強制轉換為我們需要的型別.4. JavaBean傳參: 這是最高階的一種傳遞引數,它把任何資料型別,任何方式封裝在JavaBean中.我們在屬性中定義需要傳遞的引數,然後加入一個get和set方法就可以了,在Jsp中呼叫的時候可以設定其生命週期,完成傳遞引數的過程.  應用舉例:
    package bean;    public class sampleBean
    {
      private String sample="Star value";
      public String getSample()
      {
        return sample;
      }
      public void setSample(String newsample)
      {
        if(newsample!=null)
        {
          sample=newsample;
          }
    }
  優點:   靈活,多樣,傳遞陣列、物件、雜湊表、等等資料結構.
  缺點:   根據傳遞引數的不同編寫不同的JavaBean,費時費力.  任何事物都有它的優缺點,事物都存在兩面性,不能片面的使用一種傳遞方式,我們應該根據實際情況和現實需要,選擇一種傳遞方式.