五、ServerSideIncludes
在服務器端引用上ASP和JSP有著相同之處。ASP和JSP都可以支持此功能的服務器(IIS,APACHE)上實現服務器端包含虛文件。但JSP是將動態頁面的結果包含進來,而不是包含文件的代碼本身。當你包含的文件在另一個服務器上時,不包含任何代碼和對象是一個非常有效的功能。
ASP:
JSP:<!--#include file="subfile.asp" -->
六、JAVA組件:JavaBeans
JavaBeans是一些完成預定義功能的封裝的對象數據。JavaBeans和JSP接合與COM和ASP相比如下:
COM對象常用來封裝商業邏輯和為ASP頁面完成高強度計算。重用的組件使得頁面簡單快速,因為組件由編譯語言(C++,VB)構成,而不是解釋型的scripting語言(VBScript, JScript)。
JavaBeans只能用java語言開發,com可以由符合標准對象模型的任何語言開發(包括Visual J++)。另一方面,JavaBeans更容易開發,因為一旦掌握了java,了解JavaBeans的結構非常容易。由於com的復雜性,需要大量的學習和培訓才能掌握--即使你具有c++和vb的基礎也需要額外的努力。Com 組件需要在服務器上注冊,如果你修改了一個現有的組件,服務器需要重新啟動才能使用它。JavaBeans不需要重新注冊,如果開發者不需要得到對服務器的完全訪問權限,這是其一個巨大的優點。
可以創建滿足商業邏輯的完整的JavaBeans庫,讓非編程人員使用庫來開發動態網站。
Beans可以在服務器端管理數據庫連接。
JavaBeans符合結構化對象模型:每個Bean由一個不帶參數的構造函數,控制它的servlet可以使用內省(introspection)來設置其屬性。要設置Bean的內置屬性,必須使用帶有屬性名的setProperty標簽。如果一個屬性可以設置,Bean需要有一個setXxxx方法,Xxxx用實際的屬性名來代替。
七、JSP和數據庫
ASP使用ODBC通過ADO連接數據庫,而JAVA通過一個叫JDBC的技術聯接數據庫。目標數據庫需要一個JDBC驅動程序--一個數據庫與JAVA的接口,使得JAVA可以用標准的方式訪問數據庫。JDBC不使用服務器端的數據源。只要有JDBC驅動程序,JAVA就可以訪問數據庫了。如果一個特定的數據庫沒有JDBC驅動程序,而只有ODBC驅動程序,JAVA提供一個JDBC-ODBC橋來將JDBC調用轉化為ODBC調用。所有的JAVA編譯器都帶有一個免費的JDBC-ODBC橋。理論上,橋可以訪問任何常見的數據庫產品。
結論:JSP模型是在ASP之後定義的,它借用了ASP的許多優點,如Session,Application等對象。同時JSP使用靈活而強大的JAVA語言,而不是低效的Scripting語言。ASP開發者只能使用基於windows平台的技術,而java和jsp是跨平台的。