新聞中心
我們將通過ASP和JSP語(yǔ)法和對(duì)象之間的比較來說明,從ASP到JSP之間的轉(zhuǎn)換是可以實(shí)現(xiàn)的。

10余年建站經(jīng)驗(yàn), 成都做網(wǎng)站、網(wǎng)站建設(shè)客戶的見證與正確選擇。創(chuàng)新互聯(lián)提供完善的營(yíng)銷型網(wǎng)頁(yè)建站明細(xì)報(bào)價(jià)表。后期開發(fā)更加便捷高效,我們致力于追求更美、更快、更規(guī)范。
ASP與JSP的隱含對(duì)象
Application Object: 在所有用戶間分享當(dāng)前應(yīng)用信息。
- < % Dim ls_write
- For Each Key in Application.Contents
- ls_write = Key + ":"+Application(Key)
- Next
- %>
Config Object: 存儲(chǔ)servlet的配置信息,但是很少使用。
| 功能 | ASP | JSP |
| 對(duì)象名稱 | ASP沒有類似對(duì)象 | config |
| 對(duì)象類型 | N/A | javax.servlet.ServletConfig |
| Servlet名稱 | N/A | getServletName |
| 返回servlet初始化參數(shù)的名稱 | N/A | getInitParameterNames() |
| 得到初始參數(shù)的值 | N/A | getInitParameter(String name) |
Error Object: 包含在腳本中發(fā)生的任何錯(cuò)誤信息
| 功能 | ASP | JSP |
| 對(duì)象名稱 | ASPError | Exception |
| 對(duì)象類型 | N/A | java.lang.Throwable |
| 特別注意 | 在最新的ASP3.0/IIS5.0對(duì)象,可以使用Server.GetLastError方法來獲得ASPError對(duì)象 | 只有把頁(yè)面定義為error頁(yè)面的時(shí)候才能夠得到它。可以使用如下聲明: < %@ page isErrorPage="true" %> |
| 錯(cuò)誤消息 | Description () | getMessage() |
| 得到全部錯(cuò)誤 | ASPDescription() | toString() |
| 錯(cuò)誤跟蹤 | N/A | printStackTrace(out) |
| 錯(cuò)誤位置 | LineColumn | N/A |
Out: 用來寫和控制從服務(wù)器到瀏覽器的輸出緩存
| 功能 | ASP | JSP |
| 對(duì)象名稱 | Response | out |
| 對(duì)象類型 | N/A | javax.servlet.jsp.JspWriter |
| 將數(shù)據(jù)寫入output 緩存中 | Write variant | print(object or primitive data type) |
| 寫二進(jìn)制數(shù)據(jù) | BinaryWrite data | 必須通過java OutputStream類來使用這個(gè)方法。 ServletOutputStream Output = response.getOutputStream();Output.write(Btye[] buffer); |
| 清空out緩存 | Clear | clearBuffer() |
| 發(fā)送當(dāng)前的緩存到客戶端 | Flush | flush() |
| 停止處理當(dāng)前頁(yè)面 | End | close() 這與end不同,它關(guān)閉了當(dāng)前的輸出流,而JSP頁(yè)面仍然將完成它的處理 |
Request Object: 從客戶端(瀏覽器)接受信息。
| 功能 | ASP | JSP |
| 對(duì)象名稱 | Request | request |
| 對(duì)象類型 | N/A | 是javax.servlet.ServletRequest的子類 通常是javax.servlet.HttpServletRequest |
| Cookie細(xì)節(jié) | Cookies(cookie)[(key).attribute] | cookie[]=getCookies() |
| 獲取表格數(shù)據(jù) | string = Form(element)[(index)]For example:mydata= Request.Form("date") | string = getParameter(Name)Enum = getParameterNames()string[]= getParameterValues(name)For example:ls_form = request.getParameter("date"); |
| 獲取查詢數(shù)據(jù) | QueryString(element)[(index)|.Count] | getParameter(Name)getQueryString() (entire query string) |
| 由客戶端發(fā)送的HTTP頭 | ServerVariables (server environment var)For example: ServerVariables (ALL_RAW) returns to you all the headers in raw format | getHeaderNames()getHeader(name)getHeaders(name)getIntHeader(name)getDateHeader(name) |
Response Object:發(fā)送信息到瀏覽器。ASP和JSP對(duì)待response對(duì)象有一些不同。ASP只使用Response對(duì)象來控制到瀏覽器的輸出。JSP將這個(gè)功能分離到兩個(gè)對(duì)象中。在JSP中Response是被發(fā)送到客戶端的實(shí)際對(duì)象。JSP也使用out對(duì)象來實(shí)現(xiàn)向輸出緩存寫功能。
| 功能 | ASP | JSP |
| 對(duì)象名稱 | Response | response |
| 對(duì)象類型 | N/A | 是javax.servlet.ServletResponse的子類,通常用:javax.servlet.HttpServletResponse |
| 緩存頁(yè)面輸出 | Buffer = True/False | JSP的頁(yè)面緩存通常為8K??梢栽O(shè)置緩存大小,下面的例子是關(guān)閉緩存 < %@ page buffer= "none" %> |
| 啟用/不啟用代理服務(wù)器緩存 | CacheControl =Private/Public | setHeader("Pragma","no-cache")setHeader("Cache-Control","no-cache") |
| 添加Cookie | Cookies(cookie)[(key).attribute] = value | addCookie(cookie) |
| 添加Http頭 | AddHeader Name,Value | setHeader(Name,Value) |
| 使客戶端連接到另外一個(gè)頁(yè)面 | Redirect URL | sendRedirect(Absolute URL) |
| 發(fā)送錯(cuò)誤信息到客戶端 | N/A | sendError(int code,String msg) |
| 設(shè)置輸出MIME類型 | ContentType = "MIME TYPE" | setContentType("MIME TYPE") |
Server Object: 提供到服務(wù)器端的方法和屬性的連接。
| 功能 | ASP | JSP |
| 對(duì)象名稱 | Server | JSP沒有服務(wù)器對(duì)象,在ASP Server對(duì)象中的功能已經(jīng)被分配到了別的頁(yè)面中 |
| 對(duì)象類型 | N/A | N/A |
| 在服務(wù)器端創(chuàng)建一個(gè)對(duì)象 | CreateObject(Object id) | N/A |
| 對(duì)一個(gè)String進(jìn)行HTML編碼 | HTMLEncode(String) | N/A |
| 通過絕對(duì)路徑尋找文件 | MapPath( Path ) | N/A |
| 對(duì)URL進(jìn)行編碼 | URLEncode(String) | N/A |
| 設(shè)置超時(shí) | ScriptTimeout = Seconds | N/A |
Session Object:為一個(gè)用戶在多頁(yè)面間共享信息。
| 功能 | ASP | JSP |
| 對(duì)象名稱 | Session | session |
| 對(duì)象類型 | N/A | javax.servlet.http.HttpSession |
| 注意 | ASP通過使用cookie使用session | JSP有兩種session管理方法: 1.使用cookie 2.使用URL重寫 |
| 關(guān)閉session并釋放其資源 | Abandon | invalidate() |
| 存儲(chǔ)一個(gè)session變量 | Session (String name) ="Your Data" | setAttribute(String name,Object object)* |
| 存儲(chǔ)一個(gè)session對(duì)象 | Set Session (String name) = Server.CreateObject(String name) | 同上 |
| 獲取一個(gè)session變量 | My_Variable = Session(String name) | getAttribute (String name)* |
| 獲取一個(gè)session對(duì)象 | Set My_Object = Session(String name) | 同上 |
| 刪除一個(gè)session的對(duì)象或變量 | Contents.Remove(String name) | removeAttribute(String name) |
| 收集內(nèi)容 | Contents | getAttributeNames() |
| Session ID | SessionID | string =getId() |
| 設(shè)置超時(shí) | Timeout(Minutes) | setMaxInactiveInterval(int interval in seconds) |
| 得到超時(shí)設(shè)置 | N/A | int =getMaxInactiveInterval() |
| 禁用session | < %@ EnableSessionState = False%> | < %@ page session="false"%> |
ASP與JSP的腳本
腳本聲明:怎么將服務(wù)器端的腳本從客戶端的腳本中分離開。
| ASP | JSP |
| < % Your Server Side Script %> | < % Your Server Side Script %> |
表達(dá)式:將數(shù)據(jù)直接送到輸出緩存中。
| ASP | JSP |
| < %= Your_Variable %> | < %= Your_Variable %> |
申明:申明變量和方法,使他們可以在本頁(yè)面內(nèi)使用。
| ASP | JSP |
| < % Your Function %> | < %!Your Function %> |
標(biāo)識(shí):告訴容器怎樣處理這個(gè)頁(yè)面,
| ASP | JSP |
| < %@ Your Directive %> | < %@ Your Directive %> |
| 例如設(shè)置腳本語(yǔ)言: < %@ LANGUAGE="VBSCRIPT" %> 再如: < %response.buffer=true%> | 標(biāo)識(shí)發(fā)送信息給容器 標(biāo)識(shí)不向輸出緩存發(fā)送信息 當(dāng)JSP頁(yè)面初始化時(shí),標(biāo)識(shí)被處理 例如設(shè)置腳本語(yǔ)言: < %@ page language= "java"%> 再如: < %@ pagebuffer="64k"autoFlush= "true"%> |
腳本注釋:
| 注釋類型 | ASP | JSP |
| 一般注釋 | < % 'Your Comment %> | Java的注釋: < %//my comment %> 或< % /* my comment */ %> |
| 特定注釋 | N/A | JSP的注釋: < %-- your comment --%> 這類注釋不在容器中處理,也不放入servlet中 |
ASP與JSP的引入文件
引入:在頁(yè)面沒有處理前,引入文件
| ASP | JSP |
| < !--#include file="Your File.asp" --> < !--#include virtual ="/Your File.asp"--> | < %@ include file="Your File" %> < jsp:directive.include file="Your File" %> |
ASP與JSP的轉(zhuǎn)文件
| ASP | JSP |
| response.redirect("to_File.asp") | response.sendRedirect("to_File.asp") |
分享題目:從語(yǔ)法和對(duì)象比較看ASP與JSP功能的可轉(zhuǎn)化性
鏈接分享:http://www.dlmjj.cn/article/cdossog.html


咨詢
建站咨詢
