JSP企業面試題整理(3)
4-1. 有幾種方法實現頁面的跳轉,如何??
jsp:forward操作指令用於把當前的JSP頁面轉寄到另一個頁面上。基本文法為:“<jsp:forward page="test2.jsp"/>”,使用該功能時,瀏覽器的地址欄中地址不會發生任何變化。
對於response對象,最常用到的是sendRedirect()方法,可以使用這個方法將當前用戶端的請求轉到其它頁面去。相應的代碼格式為:“response.sendRedirect("URL地址");
4-2 synchronized關鍵字有什麼功能?
,一般會在函數前面加上synchronized關鍵字,功能是當前一個使用者在執行該方法的時候,其他的使用者必須等待,直到該使用者完成操作
4-3. out對象有什麼功能,out.print和document.write有什麼區別?
out對象是javax.servlet.jsp.JspWriter類的一個子類的對象,它的作用是把資訊回送到用戶端的瀏覽器中。在out對象中,最常用的方法就是print()和println()。在使用print()或println()方法時,由於用戶端是瀏覽器,因此向用戶端輸出時,可以使用HTML中的一些標記,例如:“out.println("<h1>Hello,JSP</h1>");
out.print是JSP代碼, 被伺服器解釋執行。
Document.write是JavaScript代碼,被用戶端瀏覽器解釋執行。
4-4. 如何獲得獲得用戶端的IP地址?
利用request對象可以獲得客戶提交的資訊,比如:JSP檔案目錄、用戶端的地址、以及伺服器的連接埠等、
<BR>擷取客戶的IP地址:
<% String IP=request.getRemoteAddr();
out.println(IP);%>
4-5. application對象有什麼特點?和session對象有什麼聯絡和區別?
網站所有的使用者公用一個application對象,當站台伺服器開啟的時候,application就被建立,直到網站關閉。
可以使用Session Object Storage Service使用者登入網站時候的資訊。當使用者在頁面之間跳轉時,儲存在Session對象中的變數不會被清除
聯絡是:資料都儲存在伺服器端,而且都可以保留一段時間。
區別是:每個使用者有一個session,但是application是共有的。
4-6. 程式如何向瀏覽器寫入Cookie集合,如何從瀏覽器端讀取Cookie集合。
Cookie對象是由Web伺服器端產生後被儲存到瀏覽器中的資訊。Cookie對象可以用來儲存一些小量的資訊在瀏覽器中。目前主流的瀏覽器(Internet Explorer和Netscape Navigator)都支援Cookie。
案例名稱:寫入Cookie
程式名稱:4-25.jsp
<%@ page contentType="text/html;charset=GBK" %>
<%
String strName = "Zhourunfa";
Cookie c = new Cookie("Name1", strName);
response.addCookie(c);
%>
案例名稱:讀出Cookie
程式名稱:4-26.jsp
<%@ page contentType="text/html;charset=GBK" %>
<HTML><BODY>
<%
Cookie cookies[] = request.getCookies();
for(int i=0; i<cookies.length; i++) {
if(cookies[i].getName().equals("Name1"))
out.print(cookies[i].getValue());
}
%>