xiaohan

            BlogJava :: 首頁(yè) :: 聯(lián)系 :: 聚合  :: 管理
            1 Posts :: 22 Stories :: 0 Comments :: 0 Trackbacks
          客戶單通過(guò)創(chuàng)建html的form表單來(lái)與servlet交互的
          <FORM ACTION="....">.....</FORM>,其中action對(duì)應(yīng)的就是處理表單數(shù)據(jù)的servlet的url。
          <INPUT TYPE="TEXT"  NAME="....">,servlet通過(guò)request.getParameter(NAME)來(lái)讀取表單中的數(shù)據(jù)。其中TYPE是html輸入的類型。
          <INPUT TYPE="SUBMIT"> 按下這個(gè)按鈕,瀏覽器會(huì)調(diào)用表單的ACTION指定的URL。

          在servlet中讀取表單數(shù)據(jù)的函數(shù)
          單值讀取,request.getParameter("NAME")注意參數(shù)名是大小寫(xiě)敏感的。
          多值讀取,request.getParameterValues("NAME")返回的是字符串?dāng)?shù)組。對(duì)于不存在的參數(shù)名,返回值為null,如果只有單一的值,則返回只有一個(gè)元素的數(shù)組。
          參數(shù)名查找,一般情況下servlet并不知道參數(shù)名,
          Enumeration e = request.getParameterNames();
          while(e.hasmoreElements()){
          String s = (String)e.nextElement();
          String[] paraValues = request.getParameterValues(s);
          }
          getParameterMap是getParameterNames()的代替方案,這個(gè)方法返回的是一個(gè)Map:
          (參數(shù)名,getParameterNames())。
          getReader用了讀取定制的客戶的數(shù)據(jù)。
          getInputStream讀取<INPUT TYPE="FILE" .....>

          多字符集輸入的讀取
          默認(rèn)情況下,request.getParameter使用的是服務(wù)器當(dāng)前的字符集解釋輸入的,如果要改變默認(rèn)行為,就要使用request.setCharacterEncoding來(lái)設(shè)置字符集。
          但是要是輸入中使用了多個(gè)字符集,這種做法就行不通了。
          可以用getBytes來(lái)提取原始的字節(jié)數(shù)據(jù),然后用String的構(gòu)造函數(shù)進(jìn)行編碼。
          String s = request.getParameter("firstname");
          String s = new String(s.getBytes(), “GBK”);
          posted on 2012-12-01 17:11 曉寒 閱讀(168) 評(píng)論(0)  編輯  收藏 所屬分類: coreservlets
          主站蜘蛛池模板: 井研县| 上高县| 汾西县| 五常市| 南漳县| 延边| 勐海县| 霍山县| 鲁甸县| 理塘县| 会泽县| 邮箱| 宁阳县| 土默特右旗| 扎囊县| 和平县| 精河县| 库车县| 内丘县| 西峡县| 台安县| 邳州市| 得荣县| 宁乡县| 长兴县| 郧西县| 云林县| 昭平县| 翼城县| 罗田县| 苏尼特左旗| 工布江达县| 乌兰县| 灵寿县| 贵州省| 永吉县| 南陵县| 丽江市| 吴堡县| 泰兴市| 宁远县|