『JSPとサーブレット』入門 システムエンジニアリング演習 2003年1月28日 CGIの限界 • CGIによる動的なサービスの限界 クライアント 多くのメモリを消費 し、CPUへの不可 が大きくなる。 プロセス1 Webサーバ クライアント CGI プロセス2 Webサーバソフトウェア 別 々 に 動 作 クライアント クライアント への応答 が遅くなる。 プロセス3 2 サーバサイドスクリプティング • サーバサイドスクリプティングとは、Webサーバソフト ウェア自体にCGI機能を組み込んでしまう技術。ASP JSP クライアント Webサーバ TSS Webブラウザ OS 要求 Webサーバ ソフトウェア スクリプト 実行エンジン スレッド1 プロセス (process) 生成 起動 スレッド2 ・・ ・ スレッドn 応答 3 ASPとJSP Active Server Pages(ASP) ⇒ マイクロソフト Java Server Pages(JSP) ⇒ サン・マイクロシステムズ • 動的なWebページを作成するためのスクリプト 技術。 • ASPがマイクロソフトの開発環境に依存している のに対し、JSPはJavaを利用できるほとんどの環 境に対応。 4 ASP • サーバサイド・スクリプトであるASPによって開発された Webページには、ページ・レイアウトやフォント、グラ フィック要素の位置などを定義するためのHTMLと、マ イクロソフトのスクリプト言語で書かれたプログラミン グ・コードが埋め込まれている。 • ASPの多くは、Visual Basic ScriptかJavaScriptを使って 開発されている。ただし、サードパーティ・ベンダーから 提供されているスクリプト・エンジンを利用すれば、Perl 等のスクリプト言語もASPの開発に利用できる。 5 JSP • HTML内にJavaやコンポーネントを直接埋め込むことによって、動的 なWebサイトを容易に実現する技術。ASPのJava版。 クライアント Webブラウザ Webサーバ 要求(○○○.jsp) UNIX系OS/Windows Server HTMLファイル を“○○○.jsp” として保存 Java Web Server etc. JSP (Java Server Pages) JSPはOS を限定せず、 Javaをそのま ま使える。 応答(HTML) ○○○.jsp HTML JSPによって○○○.jspのJavaやEJB部 分が実行され、HTML化される。 JavaタグやEJB(Enterprise JavaBeans)を含むHTML HTML Java/EJB 6 Javaプログラムの種類 • Javaプログラムは動作環境により、次の3種類 に分類される。 種 類 説 明 Javaアプリケーション 単独で動作するプログラム。Swingのよう な優れたユーザインターフェイスを持つ。 Javaアプレット WebサーバからWebブラウザ側へ配信さ れ、Webブラウザにより実行されるプログ ラム。 Javaサーブレット Java対応のサーバ上で動作するプログラ ム。アプリケーションのように単独で動作 するのではなく、プログラムモジュールの 1つとして動作する。 7 Javaアプレット • Javaアプレット(Javaコンパイラによって生成され たプログラムモジュールで、.classという拡張子を持 つ)は、HTMLページによってWebブラウザに読み 込まれ、Webブラウザに組み込まれたJava VM(イ ンタプリタ)によって実行される。 Applet.class ダウンロード Applet.class Java VM Webブラウザ Webサーバ クライアント 8 Javaサーブレット • Javaサーブレットは、サン・マイクロシステムズが提供 するJava Web Server上で動作するプログラムモジュール (Javaプログラム)。Javaアプレットとは対照的にクライ アント(Webブラウザ)にプログラムをダウンロードせ ず、サーバ側でプログラムを実行する。 クライアント Webブラウザ Webサーバ 入力情報など HTML応答 JSPは処理結果 のHTMLでの応 答を担当する。 プロセスではな く、スレッドと して起動される。 (スレッドはメ モリ消費量が少 ないので、リ ソースを効率的 に利用可能) Webサーバソフトウェア (Java Web Server etc.) スレッド1 サーブレット エンジン (Java VM) (サーブレット) サーブレット スレッド2 ・・ ・ スレッドn JSP(JSPファイル) Java VM にクラス ファイル がロード される。 9 Webサーバソフトウェア Webサーバソフトウェア Webサーバがクライアントからの要求に応えて、HTTPに よるHTML情報の配信を可能にするソフトウェア。Web サーバに常駐して、クライアントからの要求を待つ。 Webサーバソフトウェアの代表例 Apache : 最も代表的なもの(フリーウェア) IIS(Internet Information Server) : Windows環境で用いられ る。Windows2000 Serverで標準。ASP対応。 Netscape Enterprise Server : Netscape社。Java対応機能 強化 Java Web Server : マイクロシステムズ社。JSPなど、Java 環境をWebサーバ上に構築するのに最適。 10 Webアプリケーションサーバ Webアプリケーションサーバ Webサイトにおいてユーザからの要望に応える ため、様々に特化した業務処理を行うコン ピュータ、もしくはソフトウェア。 ⇒ TOMCAT ODBC (Open DataBase Connectivity) OLE DB(OLEを用いたデータベースアクセス用 のプログラミングインターフェイス。 JDBC (Java DataBase Connectivity) ODBCのJava環境版。SQLを用いてデータベー スを利用できる。 11
© Copyright 2024 ExpyDoc