request
:請求對象,包含客戶端的請求信息<form action="page4.jsp"> 用戶名:<input type="text" name="username"/><br/> <input type="checkbox" name="hob" value="籃球">籃球 <input type="checkbox" name="hob" value="足球">足球 <input type="checkbox" name="hob" value="羽毛球">羽毛球 <input type="checkbox" name="hob" value="游泳">游泳 <input type="submit" value="提交"/> </form>
request.getContextPath()
request.getRemoteAddr()
request.getRequestURI()
request.getParameter("參數名")
String[] s = request.getParameterValues("參數名");
###2.response
:封裝jsp的響應java
<!-- response對象 --> <% //用於向頁面輸出信息 PrintWriter pw = response.getWriter(); pw.println("hello,response"); if(s.length>2) //頁面重定向 response.sendRedirect("sucess.jsp"); %>
session
:用於長期存儲用戶信息保持會話的對象<!-- session對象 --> <% //向session中添加信息 session.setAttribute("uname",name); %>
請求成功,歡迎你:<%String name = session.getAttribute("uname").toString(); out.println(name); %> <a href="page5.jsp">page5.jsp</a>
application
:用於用戶之間共享的數據對象,它開始於服務器的啓動,直到服務器的關閉//向application中添加信息 application.setAttribute("參數名",值);
application.getAttribute("參數名");
除此以外,咱們能夠繼續在其餘的頁面獲取到這個值,即便咱們關閉當前瀏覽器,而後用另一個瀏覽器打開,還能獲取到application的值。對比request,session能夠看到,當咱們關閉當前瀏覽器,打開一個新的鏈接的時候,利用session和request獲取到的值都已經丟失,而application的值還存在,因此說只要服務器不斷開鏈接這個值就一直存在。web
//得到服務器引擎信息 String info = application.getServerInfo();
out
:從response中獲取的的字符打印流(PrintWriter)對象,用於向頁面輸出信息<% //完成一個九九乘法表,頁面輸出,java實現 String[] colors = {"red","green","blue"}; for(int i=1;i<10;i++){ for(int j=1;j<=i;j++){ out.print("<font color="+colors[j%3]+">"+j+"*"+i+"="+(i*j)+" "+"</font>"); } out.println("<br>"); } %>
pageContext
:提供對jsp頁面全部對象的信息的訪問page
:相似於咱們java中對象的this的引用exception
:異常對象,當頁面中發生異常包裝了全部異常信息的對象config
:獲取當前web.xml配置信息的對象#jsp內置對象的四大做用域瀏覽器
pageContext
:當前頁,存儲在pageContext
中的數據默認只能在當前頁面訪問和使用;requeset
:只能在一次請求中保存(若是須要持續保存,則須要請求轉發,將request
繼續傳遞);session
:可以在整次會話中都能保存,只要在session
的有效時間以內,而且瀏覽器未關閉的狀況下;application
:可以在應用程序級別保存數據,即便客戶端瀏覽器被關閉,都能長期有效,而且全部用戶之間都可以共享數據。除非服務器中止。請求轉發和重定向tomcat
request.serAttribute("參數名","值"); request.getRequestDispatcher("請求地址").forward(request,response);
resposne.sendRedirect("請求的地址")
特要說明的是:若是咱們將參數放在request內置對象中進行傳遞,那麼咱們只能採用請求轉發的方式,由於請求轉發只發生一次請求,而重定向會發送屢次請求,而request對象的值,只能在一次請求中進行傳遞,因此,只能是請求轉發的方式。並且,請求轉發以後網頁欄中顯示的是發送請求的頁面的地址,重定向顯示的是最後一次請求的地址,並且request對象丟失。服務器