現在、最も一般的に使用されている動的 Web ページ言語は、ASP (Active Server Pages)、PHP (HyperText Preprocessor)、および JSP (Java Server Pages) の 3 つです。
JSP と ASP はどちらも HTML に埋め込むことができるプログラムですが、根本的に異なります。
(1) WEBサーバーのサポート
Apache、Netscape、Microsoft IIS などのほとんどの一般的な WEB サーバーは、Microsoft 独自の Microsoft IIS とパーソナル Web サーバーのみが ASP をサポートします。
(2) プラットフォームのサポート
JSP は、一般的な Java プログラムが実行できるプラットフォームが JSP プログラムをサポートしている限り、プラットフォームに依存しません。 Windows プラットフォームは ASP を十分にサポートできますが、ASP は Win32 ベースのモデルに依存しているため、他のプラットフォームへの移植が困難になります。
(3) コンポーネントモデル
JSP は再利用可能なクロスプラットフォーム コンポーネントに基づいて構築されていますが、ASP は Win32 に基づく COM コンポーネント モデルを使用します。
(4) スクリプト言語
JSP はスクリプト言語として Java プログラミング言語または JavaScript を使用できますが、ASP はスクリプト言語として VBScript または Jscript を使用します。
(5) セキュリティ
JSP は Java セキュリティ モデルを使用し、ASP は Windows NT セキュリティ アーキテクチャを使用します。
(6) Accessデータベースとの接続
JSP は JDBC を使用して Access データベースとの接続を確立しますが、ASP は Data Active Object を使用します
(7) ユーザーがカスタマイズしたラベル
JSP はカスタム タグ ライブラリを使用して拡張できますが、ASP にはユーザーがカスタマイズしたタグ ライブラリがないため、拡張できません。
(8) 効率
データベーステストでは、Oracle8 で JSP と ASP がそれぞれ 1000 回の Insert Update Delete を実行しました。 JSP には 13 秒かかりますが、ASP には 73 秒かかります。
JSPとPHPの比較
JSP と PHP はどちらもプラットフォームを超えて使用できる言語であり、Windows、UNIX、Linux の Web サーバー上で正常に実行でき、IIS や Apache などの一般的な WEB サーバーもサポートしています。ユーザーはプラットフォームを変更するときにコードを変更する必要がなく、すぐに使用できますが、両者には本質的な違いがあります。
(1) 適用範囲
JSP は、SUN Java の Java クラスおよび EJB を通じてスケール サポートを取得できますが、多くのメーカーの EJB/CORBA およびアプリケーション サーバーを通じて構造サポートを取得できます。PHP はスケール サポートとマルチレイヤー構造を欠いています。データベース インターフェイスのサポートは均一ではないため、一部の小規模な商用サイトに適しています。
(2) データベースアクセス
JSP は JDBC テクノロジーを介してデータベースに接続します。特定のデータベースに JDBC ドライバーがなく、ODBC ドライバーのみがある場合、Java は JDBC を ODBC 呼び出しに変換するための JDBC-ODBC ブリッジを提供し、複数の関数を使用してコンパイルできます。データベース接続、MySQL と完全に組み合わされており、開発者はデータベースに間接的にアクセスするための周辺関数を作成できます。ただし、Oracle、MySQL、Sysbase とのインターフェイスなど、提供するデータベース インターフェイスのサポートはそれぞれ異なります。
(3) 効率性
データベーステストでは、Oracle8 で JSP と ASP がそれぞれ 1000 回の Insert Update Delete を実行しました。 JSP には 13 秒かかりますが、PHP には 69 秒かかります。
3 つの中で、JSP は将来の開発トレンドになるでしょう。世界最大の電子商取引ソリューション プロバイダーの一部は JSP/サーブレットを使用します。より有名なものは、IBM の E ビジネスです。その中核となるのは、JSP/サーブレットを使用するサーバー WebSphere です。