PHPerがサーブレットについて勉強

java8

tomcat8

サーブレット(Java Servlet)は、サーバ上で動作するJavaプログラムのこと。
・動的な処理
・ブラウザなどのWebクライアントを対象
・アプリケーションサーバ上で動作

逆にブラウザ上で実行されるプログラムをアプレットという。

動的な処理とは

クライアントからのリクエストに応じてプログラム処理をを行い、動的な結果を返すこと

PHP都の違いはパフォーマンス、PHPはリクエストのたびに新たなプロセスを起動して結果を返すが、サーブレットはJavaプロセスを起動しプロセスの中のスレッド単位でリクエストを処理する。速度とメモリ消費量の点でJavaが優れている。

ポータビリティ(移植性)が高い。

サーブレットはHTTPプロトコル上で動作するプログラム
プロトコルは通信規約のこと、コンピュータ同士で通信する場合の方式

HTTPはWebのプロトコル、TCP/IPはインターネットのプロトコル

アプリケーションサーバ

サーブレットを動作させるためのもの

通常はmain()メソッドから実行されるJavaに対して、クライアントからのリクエストごとにサーブレットを呼び出して実行する環境をサーブレットコンテナ、サーブレットコンテナを含むJavaのサーバサイドアプリケーションを実行するサーバをアプリケーションサーバと呼ぶ。

JSP

HTMLページを出力するためのサーブレットの拡張技術

サーブレットプログラムのソースコード中にHTMLタグを記述していくのは大変なので、HTML中にJavaコードを記述する、いわゆるビュー的なもの。

JavaEE

企業向けエディション、主にサーバサイドで高信頼性やパフォーマンスが求められる場面での利用を想定したAPIを提供

サーブレットとJSPはJavaEEの一部(サブセット)。

JavaSEの上に構築される

昔は、J2EEと呼ばれていた

現在はJDK7.0

JavaSE

標準エディション、デスクトップ向け、単にJDKと呼ばれる場合はJavaSE

JavaME

組み込み向けエディション、CPUやメモリが少ない場面でも動作するようJavaSEより機能をケズて、組み込み向けに最適化されたAPIを提供

JavaRE

Javaで開発されたソフトウェアを動かすためのもの、開発むけのものでない

MVC

モデル・・・Javaビーンズ?

ビュー・・・JSP

コントローラ・・・サーブレット

Tomcat

アプリケーションサーバ、サーブレット/JSPの開発・実行するためのもの

内部に別途HTTPサーバをもっている

Tomcatディレクトリ内
bin・・・起動、停止などのスクリプト
conf・・・設定ファイル系
lib・・・クラス、JARファイルを配置する
logs・・・ログファイルが出力
temp・・・JVMの一時ファイル
webapps・・・Webアプリケーションを配置
work・・・Webアプリケーションの一時ファイルが出力

tomcatの起動コマンドはbinフォルダにいきcatalina run

Webアプリケーションの原理javac -cp ../../../lib/servlet-api.jar src/HelloServlet.java -d classes

コメント

タイトルとURLをコピーしました