1.response:響應。
該對象是用來響應用戶請求后的結果。
2.response中的常用方法:
response.setCharacterEncoding();該方法用來處理響應時的字符集編碼問題。
response.sendRedirect("要跳轉的url地址").該方法用來重定向頁面。瀏覽器的地址欄地址會發生改變
3.轉發:
a.為什么要使用轉發?
因為request請求到服務器后,該request中的數據會失效,那么無法將請求數據傳遞到其它頁面,所以,使用轉發進行處理。
轉發對象使用request進行創建:
RequestDispatcher rd = request.getRequestDispatcher("轉發到的地址");
rd.forward(request,response);
//注意:請求成功后,request對象的數據不存在了,所以在轉發對象創建前,
使用request.setAttribute("",object)將要轉發的數據放入 request作用域。然后進行轉發操作。
1 <body> 2 <% 3 //獲取用戶提交的登錄信息(獲取請求信息使用request對象中的getParameter()) 4 String name = request.getParameter("uname"); 5 String pwd = request.getParameter("upwd"); 6 if("jack".equalsIgnoreCase(name)&&"000000".equalsIgnoreCase(pwd)){ 7 //登錄成功頁面重定向 8 //response.sendRedirect("main.jsp"); 9 //如果需要將該頁面的數據在頁面跳轉頁面的同時一並進行傳遞時,用轉發 10 //將要轉發的數據放入request作用域 11 request.setAttribute("uname", name); 12 //創建轉發對象 13 RequestDispatcher rd = request.getRequestDispatcher("main.jsp"); 14 rd.forward(request, response); 15 } 16 %> 17 <%="姓名:"+name+",密碼:"+pwd %> 18 </body>
1 <% 2 //從request作用域中獲取setAttribute()中的數據 3 String name = String.valueOf(request.getAttribute("uname")); 4 %> 5 <%="歡迎:"+name+",登錄" %>
