① out - javax.servlet.jsp.jspwriter
out對象用于把結果輸出到網頁上。
方法:
1. void clear() ;
清除輸出緩沖區的内容,但是不輸出到用戶端。
2. void clearbuffer() ;
清除輸出緩沖區的内容,并輸出到用戶端。
3. void close() ;
關閉輸出流,清除所有内容。
4. void flush() ;
輸出緩沖區裡面的資料。
5. int getbuffersize() ;
擷取以kb為機關的目前緩沖區大小。
6. int getremaining() ;
擷取以kb為機關的緩沖區中未被占用的空間大小。
7. boolean isautoflush() ;
是否自動重新整理緩沖區。
8. void newline() ;
輸出一個換行字元。
9. void print( boolean b ) ;
void print( char c ) ;
void print( char[] s ) ;
void print( double d ) ;
void print( float f ) ;
void print( int i ) ;
void print( long l ) ;
void print( object obj ) ;
void print( string s ) ;
将指定類型的資料輸出到http流,不換行。
10. void println( boolean b ) ;
void println( char c ) ;
void println( char[] s ) ;
void println( double d ) ;
void println( float f ) ;
void println( int i ) ;
void println( long l ) ;
void println( object obj ) ;
void println( string s ) ;
将指定類型的資料輸出到http流,并輸出一個換行符。
11. appendable append( char c ) ;
appendable append( charsequence cxq, int start, int end ) ;
appendable append( charsequence cxq ) ;
将一個字元或者實作了charsequence接口的對象添加到輸出流的後面。
成員:
int default_buffer = 0 - 預設緩沖區大小
int no_buffer = -1 - writer是否處于緩沖輸出狀态
int unbounded_buffer = -2 - 是否限制緩沖區大小
② request - javax.servlet.http.httpservletrequest
request對象包含所有請求的資訊,如請求的來源、标頭、cookies和請求相關的參數值等。
1. object getattribute( string name ) ;
傳回由name指定的屬性值,該屬性不存在時傳回null。
2. enumeration getattributenames() ;
傳回request對象的所有屬性名稱的集合。
3. string getauthtype() ;
傳回用來保護servlet的認證方法的名稱,未受保護時傳回null。
4. string getcharacterencoding() ;
傳回請求中的字元編碼方法,可以在response對象中設定。
5. int getcontentlength() ;
傳回請求的body的長度,不能确定長度時傳回-1。可以在response中設定。
6. string getcontenttype() ;
傳回在response中定義的内容類型。
7. string getcontentpath() ;
傳回請求的路徑。
8. cookie[] getcookies() ;
傳回用戶端所有的cookie的數組。
9. enumeration getheadernames() ;
傳回所有http頭的名稱的集合。
10. enumeration getheaders( string name ) ;
傳回指定http頭的所有值的集合。
11. string getheader( string name ) ;
傳回指定名稱的http頭的資訊。
12. long getdateheader( string name ) ;
傳回指定名稱的data類型的http頭的資訊。
13. int getintheader( string name ) ;
傳回指定名稱的int類型的http頭的資訊。
14. servletinputstream getinputstream() ;
傳回請求的輸入流。
15. locale getlocale() ;
傳回目前頁的locale對象,可以在response中設定。
16. enumeration getlocales() ;
傳回請求中所有的locale對象的集合。
17. string getlocalname() ;
擷取響應請求的伺服器端主機名。
18. string getlocaladdr() ;
擷取響應請求的伺服器端位址。
19. int getlocalport() ;
擷取響應請求的伺服器端端口
20. string getmethod() ;
擷取用戶端向伺服器端發送請求的方法(get、post)。
21. string getparameter( string name ) ;
擷取用戶端發送給伺服器端的參數值。
22. map getparametermap() ;
該方法傳回包含請求中所有參數的一個map對象。
23. enumeration getparameternames() ;
傳回請求中所有參數的集合。
24. string[] getparametervalues( string name ) ;
獲得請求中指定參數的所有值。
25. string getquerystring() ;
傳回get方法傳遞的參數字元串,該方法不分解出單獨的參數。
26. string getpathinfo() ;
取出請求中處于servletpath和querystring之間的額外資訊。
27. string getpathtranslated() ;
傳回用getpathinfo()方法取得的路徑資訊的實際路徑。
28. string getprotocol() ;
傳回請求使用的協定。可以是http1.1或者http1.0。
29. bufferedreader getreader() ;
傳回請求的輸入流對應的reader對象,該方法和getinputstream()方法在一個頁面中隻能調用一個。
30. string getremoteaddr() ;
擷取送出請求的用戶端ip位址。
31. string getremotehost() ;
擷取送出請求的用戶端主機名
32. string getremoteuser() ;
傳回經過用戶端驗證的使用者名,未經驗證傳回null。
33. int getremoteport() ;
傳回送出請求的用戶端主機端口。
34. string getrealpath( string path ) ;
傳回給定虛拟路徑的實體路徑。
35. requestdispatcher getrequestdispatcher( string path ) ;
按給定的路徑生成資源轉向處理擴充卡對象。
36. string getrequestedsessionid() ;
傳回請求的session的辨別。
37. string requesturi() ;
傳回送出請求的用戶端位址,但是不包括請求的參數字元串。
38. stringbuffer getrequesturi() ;
傳回響應請求的伺服器端位址
39. string getscheme() ;
擷取協定名稱,預設值為http協定。
40. string getservername() ;
傳回響應請求的伺服器名稱。
41. string getservletpath() ;
擷取用戶端所請求的腳本檔案的檔案路徑。
42. int getserverport() ;
擷取響應請求的伺服器端主機端口号。
43. void removeattribute( string name ) ;
在屬性清單中删除指定名稱的屬性。
44. void setattribute( string name, object value ) ;
在屬性清單中添加/删除指定的屬性。
45. void setcharacterencoding( string name ) ;
設定請求的字元編碼格式。
46. httpsession getsession() ;
httpsession getsession( boolean create ) ;
擷取session,如果create為true,在無session的情況下建立一個。
47. boolean isrequestedsessionidfromcookie() ;
檢查請求的會話id是否為通過cookie傳入。
48. boolean isrequestedsessionidfromurl() ;
檢查請求的會話id是否為通過url傳入。
49. boolean isrequestedsessionidvalid() ;
檢查請求的會話id是否仍然有效。
50. boolean issecure() ;
檢查請求是否使用安全連結,如果https等。
51. boolean isuserinrole( string role ) ;
檢查已經通過驗證的使用者是否在是role所指定的角色。
52. principal getuserprincipal() ;
傳回包含使用者登陸名的一個java.security.principal對象。
string basic_auth = "basic" -
string client_cert_auth = "client_cert" -
string digest_auth = "digest" -
string form_auth = "form" -
③ response - javax.servlet.http.httpservletresponse
response對象主要将jsp容器處理後的結果傳回到用戶端。
1. void addcookie( cookie cookie ) ;
添加一個cookie對象,儲存用戶端資訊。
2. void adddateheader( string name, long value ) ;
添加一個日期類型的http頭資訊,覆寫同名的http頭資訊。
3. void addheader( string name, string value ) ;
添加一個http頭,覆寫同名的舊http頭。
4. void addintheader( string name, int value ) ;
添加一個整型的http頭,覆寫同名的舊http頭。
5. boolean containsheader( string name ) ;
判斷指定的http頭是否存在。
6. string encoderedirecturl( string url ) ;
對sendredirect()方法使用的url進行編碼。
7. string encodeurl( string url ) ;
将url予以編碼,回傳包含session id的url。
8. void flushbuffer() ;
強制把目前緩沖區的内容發送到用戶端。
9. int getbuffersize() ;
取得以kb為機關的緩沖區大小。
10. string getcharacterencoding() ;
擷取響應的字元編碼格式。
11. string getcontenttype() ;
擷取響應的類型。
12. locale getlocale() ;
擷取響應的locale對象。
13. servletoutputstream getoutputstream() ;
傳回用戶端的輸出流對象。
14. printwriter getwriter() ;
擷取輸出流對應的writer對象。
15. boolean iscommitted() ;
判斷伺服器端是否已經将資料輸出到用戶端。
16. void reset() ;
清空buffer中的所有内容。
17. void resetbuffer() ;
情況buffer中所有的内容,但是保留http頭和狀态資訊。
18. void senderror( int xc, string msg ) ;
void senderror( int xc ) ;
發送錯誤,包括狀态碼和錯誤資訊。
19. void sendredirect( string locationg ) ;
把響應發送到另外一個位置進行處理。
20. void setbuffersize( int size ) ;
設定以kb為機關的緩沖區大小。
21. void setcharacterencoding( string charset ) ;
設定響應使用的字元編碼格式。
22. void setcontentlength( int length ) ;
設定響應的body長度。
23. void setcontenttype( string type ) ;
設定響應的類型。
24. void setdateheader( string name, long value ) ;
設定指定名稱的data類型的http頭的值。
25. void setheader( string name, string value ) ;
設定指定名稱的http頭的值。
26. void setintheader( string name, int value ) ;
設定指定名稱的int類型的http頭的值。
27. void setstatus( int xc ) ;
設定響應狀态碼,新值會覆寫目前值。
成員(http狀态碼):
int sc_continue = 100 int sc_switching_protocols = 101
int sc_ok = 200 int sc_non_authoritative_information = 203
int sc_accepted = 202 int sc_created = 201
int sc_no_content = 204 int sc_reset_content = 205
int sc_partial_content = 206 int sc_multiple_choices = 300
int sc_moved_permanently = 301 int sc_moved_temporarily = 302
int sc_found = 302 int sc_see_other = 303
int sc_not_modified = 304 int sc_use_proxy = 305
int sc_temporary_redirect = 307 int sc_bad_request = 400
int sc_unauthorized = 401 int sc_payment_required = 402
int sc_forbidden = 403 int sc_not_found = 404
int sc_method_not_allowed = 405 int sc_not_acceptable = 406
int sc_proxy_authentication_required = 407 int sc_request_timeout = 408
int sc_conflict = 409 int sc_gone = 410
int sc_length_required = 411 int sc_precondition_failed = 412
int sc_request_entity_too_large = 413 int sc_request_uri_too_long = 414
int sc_unsupported_media_type = 415 int sc_requested_range_not_satisfiable = 416
int sc_expectation_failed = 417 int sc_internal_server_error = 500
int sc_not_implemented = 501 int sc_bad_gateway = 502
int sc_service_unavailable = 503 int sc_gateway_timeout = 504
int sc_http_version_not_supported = 505
④ session - javax.servlet.http.httpsession
session對象表示目前個别使用者的會話狀态,用來識别每個使用者。
擷取與指定名字相關聯的session屬性值。
取得session内所有屬性的集合。
3. long getcreationtime() ;
傳回session的建立時間,最小機關千分之一秒。
4. string getid() ;
取得session辨別。
5. long getlastaccessedtime() ;
傳回與目前session相關的用戶端最後一次通路的時間,由1970-01-01算起,機關毫秒。
6. int getmaxinactiveinterval( int interval ) ;
傳回總時間,以秒為機關,表示session的有效時間(session不活動時間)。-1為永不過期。
7. servletcontext getservletcontext() ;
傳回一個該jsp頁面對應的servletcontext對象執行個體。
8. httpsessioncontext getsessioncontext() ;
9. object getvalue( string name ) ;
取得指定名稱的session變量值,不推薦使用。
10. string[] getvaluenames() ;
取得所有session變量的名稱的集合,不推薦使用。
11. void invalidate() ;
銷毀這個session對象。
12. boolean isnew() ;
判斷一個session是否由伺服器産生,但是用戶端并沒有使用。
13. void pubvalue( string name, object value ) ;
添加一個session變量,不推薦使用。
14. void removevalue( string name ) ;
移除一個session變量的值,不推薦使用。
15. void setattribute( string name, string value ) ;
設定指定名稱的session屬性值。
16. void setmaxinactiveinterval( int interval ) ;
設定session的有效期。
17. void removeattribute( string name ) ;
移除指定名稱的session屬性。
⑤ pagecontext - javax.servlet.jsp.pagecontext
pagecontext對象存儲本jsp頁面相關資訊,如屬性、内建對象等。
1. void setattribute( string name, object value, int scope ) ;
void setattribute( string name, object value ) ;
在指定的共享範圍内設定屬性。
2. object getattribute( string name, int scope ) ;
object getattribute( string name ) ;
取得指定共享範圍内以name為名字的屬性值。
3. object findattribute( string name ) ;
按頁面、請求、會話和應用程式共享範圍搜尋已命名的屬性。
4. void removeattribute( string name, int scope ) ;
void removeattribute( string name ) ;
移除指定名稱和共享範圍的屬性。
5. void forward( string url ) ;
将頁面導航到指定的url。
6. enumeration getattributenamesscope( int scope ) ;
取得指定共享範圍内的所有屬性名稱的集合。
7. int getattributescope( string name ) ;
取得指定屬性的共享範圍。
8. errordata geterrordate() ;
取得頁面的errordata對象。
9. exception getexception() ;
取得頁面的exception對象。
10. expressionevaluator getexpressionevaluator() ;
取得頁面的expressionevaluator對象。
11. jspwriter getout() ;
取得頁面的out對象。
12. object getpage() ;
取得頁面的page對象。
13. servletrequest getrequest() ;
取得頁面的request對象。
14. servletresponse getresponse() ;
取得頁面的response對象。
15. servletconfig getconfig() ;
取得頁面的config對象。
16. servletcontext getservletcontext() ;
取得頁面的servletcontext對象。
17. httpsession getsession() ;
取得頁面的session對象。
18. variableresolver getvariableresolver() ;
取得頁面的variableresolver對象。
19. void include( string url, boolean flush ) ;
void include( string url ) ;
包含其他的資源,并指定是否自動重新整理。
20. void release() ;
重置pagecontext内部狀态,釋放所有内部引用。
21. void initialize( servlet servlet, servletrequest request, servletresponse response,
string errorpageurl, boolean needsession, int buffersize, boolean autoflush ) ;
初始化未經初始化的pagecontext對象。
22. bodycontext pushbody() ;
bodycontext pushbody( writer writer ) ;
儲存目前的out對象,并更新pagecontext中page範圍内的out對象。
23. jspwrite popbody() ;
取出由pushbody()方法儲存的out對象。
24. void handlepageexception( exception e ) ;
void handlepageexception( thrwoable t ) ;
int page_scope = 1 - 頁面共享範圍
int request_scope = 2 - 請求共享範圍
int session_scope = 3 - 會話共享範圍
int application_scope = 4 - 應用程式共享範圍
string page = "javax.servlet.jsp.jsppage"
string pagecontext = "javax.servlet.jsp.jsppagecontext"
string request = "javax.servlet.jsp.jsprequest"
string response = "javax.servlet.jsp.jspresponse"
string config = "javax.servlet.jsp.jspconfig"
string session = "javax.servlet.jsp.jspsession"
string out = "javax.servlet.jsp.jspout"
string application = "javax.servlet.jsp.jspapplication"
string exception = "javax.servlet.jsp.jspexception"
⑥ application - javax.servlet.servletcontext
application主要功用在于取得或更改servlet的設定。
傳回由name指定的application屬性。
2. enumeration getattributes() ;
傳回所有的application屬性。
3. servletcontext getcontext( string uripath ) ;
取得目前應用的servletcontext對象。
4. string getinitparameter( string name ) ;
傳回由name指定的application屬性的初始值。
5. enumeration getinitparameters() ;
傳回所有的application屬性的初始值的集合。
6. int getmajorversion() ;
傳回servlet容器支援的servlet api的版本号。
7. string getmimetype( string file ) ;
傳回指定檔案的類型,未知類型傳回null。一般為"text/html"和"image/gif"。
8. int getminorversion() ;
傳回servlet容器支援的servlet api的副版本号。
9. string getrealpath( string path ) ;
傳回給定虛拟路徑所對應實體路徑。
10. requestdispatcher getnameddispatcher( string name ) ;
為指定名字的servlet對象傳回一個requestdispatcher對象的執行個體。
11. requestdispatcher getrequestdispatcher( string path ) ;
傳回一個requestdispatcher對象的執行個體。
12. url getresource( string path ) ;
傳回指定的資源路徑對應的一個url對象執行個體,參數要以"/"開頭。
13. inputstream getresourceasstream( string path ) ;
傳回一個由path指定位置的資源的inputstream對象執行個體。
14. set getresourcepaths( string path ) ;
傳回存儲在web-app中所有資源路徑的集合。
15. string getserverinfo() ;
取得應用伺服器版本資訊。
16. servlet getservlet( string name ) ;
在servletcontext中檢索指定名稱的servlet。
17. enumeration getservlets() ;
傳回servletcontext中所有servlet的集合。
18. string getservletcontextname() ;
傳回本web應用的名稱。
19. enumeration getservletcontextnames() ;
傳回servletcontext中所有servlet的名稱集合。
20. void log( exception ex, string msg ) ;
void log( string msg, throwable t ) ;
void log( string msg ) ;
把指定的資訊寫入servlet log檔案。
21. void removeattribute( string name ) ;
移除指定名稱的application屬性。
22. void setattribute( string name, object value ) ;
設定指定的application屬性的值。
⑦ config - javax.servlet.servletconfig
config對象用來存放servlet初始的資料結構。
1. string getinitparameter( string name ) ;
傳回名稱為name的促使參數的值。
2. enumeration getinitparameters() ;
傳回這個jsp所有的促使參數的名稱集合。
3. servletcontext getcontext() ;
傳回執行者的servlet上下文。
4. string getservletname() ;
傳回servlet的名稱。
⑧ exception - java.lang.throwable
錯誤對象,隻有在jsp頁面的page指令中指定iserrorpage="true"後,才可以在本頁面使用exception對象。
1. throwable fillinstacktrace() ;
将目前stack資訊記錄到exception對象中。
2. string getlocalizedmessage() ;
取得本地語系的錯誤提示資訊。
3. string getmessage()
取得錯誤提示資訊。
4. stacktrackelement[] getstacktrace() ;
傳回對象中記錄的call stack track資訊。
5. throwable initcause( throwable cause ) ;
将另外一個異常對象嵌套進目前異常對象中。
6. throwable getcause() ;
取出嵌套在目前異常對象中的異常。
7. void printstacktrace() ;
void printstacktrace( printstream s ) ;
void printstacktrace( printwriter s ) ;
列印出throwable及其call stack trace資訊。
8. void setstacktrace( stacktraceelement[] stacktrace )
設定對象的call stack trace資訊。
⑨ page - javax.servlet.jsp.httpjsppage
page對象代表jsp對象本身,或者說代表編譯後的servlet對象,
可以用( (javax.servlet.jsp.httpjsppage)page )來取用它的方法和屬性。