1.1 out(向客戶(hù)端輸出各種數(shù)據(jù)類(lèi)型)
重要方法:
-- out.print(類(lèi)型) 或 out.println(類(lèi)型):換行輸出
-- out.newLine():輸出一個(gè)換行符號(hào)
-- out.flush():輸出緩沖區(qū)的數(shù)據(jù)
-- out.close():關(guān)閉輸出流
-- out.clearBuffer():清除緩沖區(qū)里的數(shù)據(jù),并把數(shù)據(jù)寫(xiě)到客戶(hù)端
-- out.clear():清除緩沖區(qū)里的數(shù)據(jù),但不把數(shù)據(jù)寫(xiě)到客戶(hù)端
-- out.getBufferSize():獲得緩沖區(qū)的大小,緩沖區(qū)的大小可用<%@page buffer=”size”%>設(shè)置
-- out.getRemaining():獲得緩沖區(qū)沒(méi)有使用的空間的大小
-- out.isAutoFlush():返回布爾值,若auto flush則返回true,否則返回false。是否auto fush我們可用%@page is AutoFlush=”true/false”%來(lái)設(shè)置
注意:中文顯示問(wèn)題
-- 若是直接賦值的中文字符串,用<%@ page contentType=”text/html;charset=gb2312”%>就可正常顯示。但不能用getStr(String name)函數(shù)或類(lèi)似的函數(shù)轉(zhuǎn)換內(nèi)碼,否則不能正常顯示中文。
-- 若是request傳過(guò)來(lái)的中文字符串,必須要用getStr(String name)函數(shù)或類(lèi)似的函數(shù)轉(zhuǎn)換內(nèi)碼,否則不能正常顯示中文。
如:String aa=str;
byte[] aa=aa.getBytes(“ISO8859-1”);
String bb=new String(aa);
-- 在不同平臺(tái)、不同的服務(wù)器jsp中文問(wèn)題的解決方法各不相同,可自行試驗(yàn)。
1.2 request(接受客戶(hù)端輸入的信息)
作用:主要用于接受客戶(hù)端通過(guò)http協(xié)議連接傳輸?shù)椒?wù)器端的數(shù)據(jù)。
方法:
-- getCookies():返回客戶(hù)端的cookie對(duì)象,結(jié)果是一個(gè)cookie數(shù)組
-- getHeader(String name):獲得http協(xié)議定義的傳送文件頭信息,
如:request.getHeader(“User-agent”)返回客戶(hù)端瀏覽器的版本號(hào)、類(lèi)型
-- getAttribute(String name):返回name指定的屬性值,若不存在指定的屬性,就返回空值(null)。
-- getattributeNames():返回request對(duì)象所有屬性的名字,結(jié)果集是一個(gè)Enumeration(枚舉)類(lèi)的實(shí)例
-- getHeaderNames():返回所有request header的名字,結(jié)果集是一個(gè)Enumeration(枚舉)類(lèi)的實(shí)例
-- getHeaders(String name):返回指定名字的request header的所有值,結(jié)果集是一個(gè)Enumeration(枚舉)類(lèi)的實(shí)例
-- getMethod():獲得客戶(hù)端向服務(wù)器端傳送數(shù)據(jù)的方法有GET、POST、PUT等類(lèi)型
-- getParameter(String name):獲得客戶(hù)端傳送給服務(wù)器端的參數(shù)值,該參數(shù)由name指定
-- get parameterNames():獲得客戶(hù)端傳送給服務(wù)器端的所有的參數(shù)名,結(jié)果集是一個(gè)Enumeration(枚舉)類(lèi)的實(shí)例
-- getParameterValues(String name):獲得指定參數(shù)所有值
-- getQueryString()獲得查詢(xún)字符串,該串由客戶(hù)端以GET方法向服務(wù)器端傳送
-- getRequestURI():獲得發(fā)出請(qǐng)求字符串的客戶(hù)端地址
-- getServletPath():獲得客戶(hù)端所請(qǐng)求的腳本文件的文件路徑
-- setAttribute(String name,Java.lang.Object o):設(shè)定名字為name的request參數(shù)值,該值由Object類(lèi)型的o指定
-- getServerName():獲得服務(wù)器的名字
-- getServerPort():獲得服務(wù)器的端口號(hào)
-- getRemoteAddr():獲得客戶(hù)端的IP地址
-- getRemoteHost():獲得客戶(hù)端電腦的名字,若失敗,則返回客戶(hù)端電腦的IP地址
-- getProtocol():獲取客戶(hù)端向服務(wù)器端傳送數(shù)據(jù)所依據(jù)的協(xié)議名稱(chēng),如http/1.1
1.3 application(保存用戶(hù)信息)
作用:一旦創(chuàng)建,除非服務(wù)器關(guān)閉,否則將一直保持下去
application.setAttribute(“name”,val)
request.setAttribute(“name”,val)
方法:
-- getAttribute(String name):返回由name指定名字的application對(duì)象屬性的值,這是個(gè)Object對(duì)象
-- getattributeNames():返回所有application對(duì)象屬性的名字,結(jié)果集是一個(gè)Enumeration(枚舉)類(lèi)的實(shí)例
-- getInitParameter(String name): 返回application栽個(gè)屬性的初始值,此屬性由name指定
-- getServerInfo():獲得當(dāng)前版本Servlet編譯器的信息
-- setAttribute(String name,Object object):用object來(lái)初始化某個(gè)屬性,該屬性由name指定
例:簡(jiǎn)單計(jì)數(shù)器(E:"app"java"tomcat322"webapps"myjsp" count.jsp)
1.4 response(控制http連接)
作用:向客戶(hù)端發(fā)送數(shù)據(jù),如Cookie、HTTP文件關(guān)信息等。
方法:
-- addCookie(Cookie cookie):添加1個(gè)Cookie對(duì)象,用來(lái)保存客戶(hù)端的用戶(hù)信息。用request的getcookies()方法可獲得這個(gè)Cookie
如:<% Cookie mycookie=new Cookie(“uname”,”wsr”);
response.addCookie(mycookie);
Cookie delmycookie=new cookie(“mycookie”,null);
delmycookie .setMaxAge(0);
delmycookie .setPath(/”);
response.addCookie(delmycookie);
%>
-- addHeader(String name,String value):添加HTTP文件頭,該header將會(huì)傳到客戶(hù)端,若同名的header存在,原來(lái)的header會(huì)被覆蓋
-- containsHeader(String name):判斷指定名字的HTTP文件頭是否存在并返回布爾值
-- sendError(int sc):向客戶(hù)端發(fā)送錯(cuò)誤信息,如:505:服務(wù)器內(nèi)部錯(cuò)誤;404:網(wǎng)頁(yè)找不到錯(cuò)誤
如:response.sendError(response.SC_NO_CONTENT);
-- setHeader(String name,String value):設(shè)定指定名字的HTTP文件頭的值,若該值存在,它將會(huì)被新值覆蓋
如1:讓網(wǎng)頁(yè)每隔5秒刷新一次
<% response.setHeader(“Refresh”,”5”);%>
the current dateis:<%=new Date()%>
如2:利用response對(duì)象設(shè)定HTTP頭
<% response.setContentType(“Application/pdf”);
response.setHeader(“content-disposition”,”attachment;filename="”syntax.pdf"””);
%>
-- sendRedirect(“http://www.foo.com/path/error.html”):重定向功能
1.5 exception(處理異常和錯(cuò)誤)
作用:處理JSP文件在執(zhí)行時(shí)所有發(fā)生的錯(cuò)誤和異常。有3個(gè)內(nèi)建方法。
注意:必須在<%@ page isErrorPage=”true”%>的情況下才可以使用Exception對(duì)象
-- getMessage():返回錯(cuò)誤信息
-- printStackTrace():以標(biāo)準(zhǔn)錯(cuò)誤的形式輸出一個(gè)錯(cuò)誤和錯(cuò)誤的堆棧
-- toString():以字符串的形式返回1個(gè)對(duì)異常的描述
1.6 session(保存用戶(hù)信息)
作用:分別保存每一個(gè)用戶(hù)的信息
session.putValue(“name”,val)
session.getValue(“name”)
注意
ssion中保存和檢索的信息不能是基本數(shù)據(jù)類(lèi)型,而必須是JAVA的相應(yīng)的Object對(duì)象。
方法:
-- getAttribute(String name):獲得指定名字的屬性,若該屬性不存在,將返回null
-- getattributeNames():返回session對(duì)象中存儲(chǔ)的第一個(gè)屬性對(duì)象,結(jié)果集是一個(gè)Enumeration類(lèi)的實(shí)例
-- getCreationTime():返回該session對(duì)象創(chuàng)建的時(shí)間,以毫秒計(jì),從1970年1月1日起
-- getId():每生成一個(gè)session對(duì)象,服務(wù)器都會(huì)給其一個(gè)不會(huì)重復(fù)的編號(hào),此方法返回當(dāng)前session的編號(hào)
-- getLastAccessedTime():返回當(dāng)前session對(duì)象最后1次被操作的時(shí)間,返回自1970年1月1日起至今的毫秒數(shù)
-- getMaxInactiveInterval():獲得session對(duì)象的生存時(shí)間
-- removeAttribute(String name):刪除指定的屬性(包括屬性名、屬性值)
-- setAttribute(String name,Java.lang.Object value):設(shè)定指定名字的屬性值,并將其存儲(chǔ)在session對(duì)象中
posted on 2008-06-19 10:32
lvq810 閱讀(157)
評(píng)論(0) 編輯 收藏 所屬分類(lèi):
Java