推薦:ASP優化:幾招提高ASP性能的最佳選擇ASP開發人員為了在他們的設計項目中獲得更好的性能和可擴展性而不斷努力。幸運地是,有許多書籍和站點在這方面提供了很好的建議。但是這些建議的基礎都是從ASP平台工作的結構上所得出的結論,對
今天上論壇看了看,有一個網友bluesky提出問題說ASP與JSP哪個好,他們有什麼區別?ASP好像不存在線程安全問題,而JSP是存在線程安全問題。這不是說ASP好,恰恰相反說明ASP不如JSP好。
對於ASP:每次請求都要解釋執行服務器端代碼,執行完除了Session和Application在,其他的都沒了,這樣的話ASP就無法實現靜態變量,不知道是不是真的沒有辦法實現,請高手指點。
而在JSP中,Servlet(JSP也會變成Servlet)是多線程的,執行完後不但Session和Application還在,而且Servlet實例還在內存,以後請求的話就可以直接用它了,正是這個提高了效率。
我總感覺Servlet模型比ASP先進,而且Java語言使它很專業!這點真的是ASP遠遠無法比的。
JSP和ASP的幾點區別
Session管理
為了跟踪用戶的操作狀態,ASP應用SESSION對象。 JSP使用一個叫HttpSession的對象實現同樣的功能。 Session的信息保存在服務器端,Session的id保存在客戶機的cookie中。如果客戶機禁止cookie,Session Id就必須帶在url後面。 Session一般在服務器上設置了一個30分鐘的過期時間,當客戶停止活動後自動失效。 Session 中保存和檢索的信息不能是基本數據類型(primitivedatatypes)如(int, double)等,而必須是java的相應的object(對象)如(Integer,Double)。
HttpSessionsession=request.getSession();//得到一個session對像或創建一個session.getId()//得到sessionID數Integerid=(Integer)session.getValue(id)//檢索出session的值並轉化為整型session.putValue(ItemValue,itemName);//ItemValue必須不是must簡單類型
Application管理
有時服務器需要管理面向整個應用的參數,使得每個客戶都能獲得同樣的參數值。和Session一樣,ASP使用Application對象而JSP使用ServletContext對象,操作的方法和Session一樣。
getServletContext().setAttribute(Item,ItemValue);//設置一個應用變量
Integeri=(Integer)getServletContext().getAttribute(ItemName);//得到//item
ServerSideIncludes
在服務器端引用上ASP和JSP有著相同之處。 ASP和JSP都可以支持此功能的服務器(IIS,APACHE)上實現服務器端包含虛文件。但JSP是將動態頁面的結果包含進來,而不是包含文件的代碼本身。當你包含的文件在另一個服務器上時,不包含任何代碼和對像是一個非常有效的功能。
ASP:<!--#includefile=subfile.asp-->
JSP:%@includefile=subfile.jsp--
分享:馬克斯電影站生成Rss Feed的代碼前段時間為了給本人的電影站增加Rss訂閱功能,動手寫了個動態生成Rss Feed的ASP代碼,沒法上傳附件,就直接貼代碼吧,反正也不長,用馬克斯做電影站的朋友直接拿去用吧,其它類型的站點修改一下