chenjinlong

          關(guān)于JSP幾個(gè)內(nèi)置對(duì)象的用法

          JSp的session內(nèi)置對(duì)象取值方法
          //創(chuàng)建session對(duì)象
          HttpSession session =requst.getSession();
          //設(shè)置session 對(duì)象的屬性值
          session.setAttribute("屬性名",值);
          取值
          Object object=session.getAttibute("屬性名")
          設(shè)置方法
          //設(shè)置響應(yīng)回去的類(lèi)型
          response.setContentType("text/html");
          //設(shè)置響應(yīng)的字符編碼格式
          response.setCharacterEncoding("UTF-8");

          request(請(qǐng)求)
          //獲取請(qǐng)求屬性的值
          request.getParameter("屬性名");
          多用于表單提交和URL參數(shù)的傳遞的取值

           JSp內(nèi)置對(duì)象生命周期:
           
          out 只在本jsp頁(yè)面使用  無(wú)生命周期
          request  生命周期 一次請(qǐng)求
          response 生命周期 一次響應(yīng)
          session  生命周期  項(xiàng)目瀏覽器關(guān)閉時(shí),生全周期結(jié)束,默認(rèn)不操作項(xiàng)目超過(guò)30分鐘生命周期結(jié)束
          application 生命周期   當(dāng)開(kāi)啟Tomcat服務(wù)器時(shí)創(chuàng)建,關(guān)閉Tomcat服務(wù)器時(shí)結(jié)束生命周期  (作用:統(tǒng)計(jì)服務(wù)器訪問(wèn)人數(shù)或流量)

           

          頁(yè)面跳轉(zhuǎn):
          response.sendRedirect("admin/one.jsp")  重定向
          RequestDispatcher 請(qǐng)求跳轉(zhuǎn)
          兩者實(shí)現(xiàn)的效果相同
          二者的區(qū)別:
          1、
          URL 地址的變化用response.sendRedirect時(shí),RequestDi.spatcher不會(huì)使URL地址進(jìn)行變化。
          RepuestDispatcher 是服務(wù)器端請(qǐng)求機(jī)制的跳轉(zhuǎn)
          response.sendRedirect 是客戶(hù)端請(qǐng)求機(jī)制的重定向
          2、
          RequestDispatcher傳值通過(guò)JSP-Servlet-JSp形式直接傳入到下一個(gè)JSp頁(yè)面
          response.sendRedirect 傳值通過(guò)JSP-Servlet-JSP形式,只能夠傳遞到請(qǐng)求機(jī)制重定向這之前
          3、
          如果項(xiàng)目要跳轉(zhuǎn)到另外一個(gè)服務(wù)器的頁(yè)面時(shí),用response.sendRedirect進(jìn)行重定向
          4、
          我們盡量使用RequestDispatcher方式,因?yàn)槭欠?wù)器響應(yīng),所以在web容器執(zhí)行效率較高


          RequestDispatcher什么時(shí)候使用呢?
          項(xiàng)目中不進(jìn)行頁(yè)面的交互跳轉(zhuǎn)的時(shí)候,例如一個(gè)界面的增、刪、改、查,或者相關(guān)聯(lián)同類(lèi)型模塊之間的跳轉(zhuǎn)

          response.sendRedirect重定向什么時(shí)候使用呢?
          無(wú)關(guān)聯(lián)的不同模塊間跳轉(zhuǎn)使用,例如,用戶(hù)界面模塊跳轉(zhuǎn)到產(chǎn)品信息界面模塊

          5、
          RequestDispatcher基本上認(rèn)定使用在Servlet里面
          response.sendRedirect 用在Servlet和JSP頁(yè)面較多


          重定向傳值 只影響request,不影響session的傳值

          session何時(shí)使用?
          傳值時(shí)盡量不要使用session
          購(gòu)物車(chē)的實(shí)現(xiàn)必須使用session對(duì)象

          session.removeAttribute("name") 全部刪除物品
          如果選擇性刪除?
          傳入要?jiǎng)h除的購(gòu)物信息主鍵id值,根據(jù)id值支查找集合中的對(duì)應(yīng)信息,然后做集合中的刪除操作
          for(Product product : list){

              if(deleteid==product.getid()){
                     list.remove(product);
          }
          }
          session.setAttribute("gouwu",list)



          兩種提交方式的亂碼處理:

          post提交方式亂碼處理
          中文亂碼問(wèn)題
          request.setcharacterEncoding("UTF-8");

          處理get方式提交的亂碼方式處理
          String names=new String(request.getParameter("name").getBytes("ISO-8859-1"),"UTF-8")

          posted on 2010-05-27 20:54 chenjinlong 閱讀(1125) 評(píng)論(0)  編輯  收藏


          只有注冊(cè)用戶(hù)登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           

          My Links

          Blog Stats

          常用鏈接

          留言簿

          隨筆檔案

          搜索

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          主站蜘蛛池模板: 都匀市| 乐清市| 女性| 裕民县| 得荣县| 大田县| 元氏县| 勃利县| 潼关县| 临潭县| 肃宁县| 大庆市| 太仆寺旗| 孝昌县| 南雄市| 天门市| 宜兴市| 黎川县| 土默特右旗| 铜鼓县| 农安县| 湟源县| 莲花县| 永吉县| 新丰县| 吉木萨尔县| 大竹县| 扎兰屯市| 蓬安县| 阿勒泰市| 宝应县| 靖安县| 织金县| 万州区| 滦南县| 镇赉县| 新巴尔虎右旗| 成都市| 商洛市| 延长县| 白玉县|