- 亮劍.NET:圖解ASP.NET網站開發實戰
- 繆勇 李新峰 張光桃編著
- 1678字
- 2019-03-01 19:44:01
1.3 動態網站開發技術
網絡技術日新月異,細心的讀者會發現許多網頁文件擴展名不再只是“.htm”,還有“.php”、“.asp”等,這些都是采用動態網頁技術制作出來的。
早期的動態網頁主要采用CGI技術,CGI即Common Gateway Interfac(e公用網關接口)。用戶可以使用不同的程序編寫適合的CGI程序,如Visual Basic、Delphi或C/C++等。雖然CGI技術已經發展成熟而且功能強大,但由于編程困難、效率低下、修改復雜,所以有逐漸被新技術取代的趨勢。
目前,最常用的3種動態網頁語言有ASP(Active Server Pages)、JSP(Java Server Pges)和PHP(Hypertext Preprocessor)。
1)PHP
PHP即Hypertext Preprocessor(超文本預處理器),它是當今Internet上最為火熱的腳本語言,雖然其語法借鑒了C、Java、PERL等語言,但你只需要很少的編程知識就能使用PHP建立一個真正交互的Web站點。
它與HTML語言具有非常好的兼容性,使用者可以直接在腳本代碼中加入HTML標簽,或者在HTML標簽中加入腳本代碼從而更好地實現頁面控制。PHP提供了標準的數據庫接口,數據庫連接方便,兼容性強,擴展性強,可以進行面向對象編程。
2)ASP
ASP即Active Server Pages,它是微軟開發的一種類似HTML(超文本標識語言)、Script(腳本)與CGI(公用網關接口)的結合體,它沒有提供自己專門的編程語言,而是允許用戶使用許多已有的腳本語言編寫ASP的應用程序。ASP的程序編制比HTML更方便且更有靈活性。它是在Web服務器端運行,運行后再將運行結果以HTML格式傳送至客戶端的瀏覽器。因此ASP與一般的腳本語言相比,要安全得多。
ASP最大的好處是可以包含HTML標簽,也可以直接存取數據庫及使用無限擴充的ActiveX控件,因此在程序編制上要比HTML方便而且更富有靈活性。通過使用ASP的組件和對象技術,用戶可以直接使用ActiveX控件調用對象方法和屬性,以簡單的方式實現強大的交互功能。
但ASP技術也并非完美無缺,由于它基本上是局限于微軟的操作系統平臺之上,主要工作環境是微軟的IIS應用程序結構,又因ActiveX對象具有平臺特性,所以ASP技術不能很容易地實現在跨平臺Web服務器上工作。
3)JSP
JSP即Java Server Pages,它是由Sun Microsystems公司于1999年6月推出的新技術,是基于Java Servlet及整個Java體系的Web開發技術。
以上三者都提供在HTML代碼中混合某種程序代碼、由語言引擎解釋執行程序代碼的能力。但JSP代碼被編譯成Servlet并由Java機解釋執行,這種編譯操作僅在對JSP頁面的第一次請求時發生。在ASP、PHP、JSP環境下,HTML代碼主要負責描述信息的顯示樣式,而程序代碼則用來描述處理邏輯。普通的HTML頁面只依賴于Web服務器,而ASP、PHP、JSP頁面需要附加的語言引擎分析和執行程序代碼。程序代碼的執行結果被重新嵌入到HTML代碼中,然后一起發送給瀏覽器。ASP、PHP、JSP三者都是面向Web服務器的技術,客戶端瀏覽器不需要任何附加的軟件支持。
JSP和ASP在技術方面有許多相似之處,不過二者來源于不同的技術規范組織,以至于ASP一般只應用于Windows NT/2000平臺,而JSP則可以在85%以上的服務器上運行,而且基于JSP技術的應用程序比基于ASP的應用程序易于維護和管理,所以被許多人認為是未來最有發展前途的動態網站技術。
目前在國內PHP與ASP應用最為廣泛。而JSP由于是一種較新的技術,國內采用的較少。但在國外,JSP已經是比較流行的一種技術,尤其是電子商務類的網站,多采用JSP。
采用PHP的網站有新浪網(sina)、中國人(Chinaren)等,但由于PHP本身存在一些缺點,使得它不適合應用于大型電子商務站點,而更適合一些小型的商業站點。
PHP的缺點為缺乏規模支持和缺乏多層結構支持。對于大負荷站點,解決方法只有一個,即分布計算。數據庫、應用邏輯層、表示邏輯層彼此分開,而且同層也可以根據流量分開,組成二維陣列。而PHP則缺乏這種支持。還有上面提到過的一點,PHP提供的數據庫接口支持不統一,這就使得它不適合運用在電子商務中。
ASP和JSP則沒有以上缺陷,ASP可以通過Microsoft Windows的COM/DCOM獲得ActiveX規模支持,通過DCOM和Transcation Server獲得結構支持;JSP可以通過SUN Java的Java Class和EJB獲得規模支持,通過EJB/CORBA及眾多廠商的Application Server獲得結構支持。
在這三者中,JSP應該是未來發展的趨勢。世界上一些大的電子商務解決方案提供商都采用JSP/Servlet。比較出名的如IBM的E-business,它的核心是采用JSP/Servlet的WebSphere;西方另外一個非常著名的電子商務軟件提供商Intershop,它原來的產品Intershop1、2、3、4 占據了主要的電子商務軟件份額。它們都是通過CGI來提供支持的。但去年10 月后它推出了Enfinity,一個采用JSP/Servlet的電子商務Application Server,而且聲言不再開發傳統軟件。
- Introduction to DevOps with Kubernetes
- 會聲會影X5視頻剪輯高手速成
- Python Artificial Intelligence Projects for Beginners
- 數據中心建設與管理指南
- ROS機器人編程與SLAM算法解析指南
- 機器自動化控制器原理與應用
- Apache Spark Deep Learning Cookbook
- CompTIA Network+ Certification Guide
- Android游戲開發案例與關鍵技術
- Microsoft Dynamics CRM 2013 Marketing Automation
- 常用傳感器技術及應用(第2版)
- Access 2007數據庫入門與實例應用金典
- DynamoDB Applied Design Patterns
- 天才與算法:人腦與AI的數學思維
- PowerPoint 2003中文演示文稿5日通