JSP
Javaのプログラムだよ
Webサーバ上で動くよ
HTMLファイルとJavaが合体したものだよ
動くときはサーブレットに変身するよ
「Jakarta Server Pages」の略だよ
簡単に書くよ
JSP(読:ジェイエスピー)とは
Webサーバ
(ホームページのファイルが置いてあるコンピュータ)上でお仕事をするJavaのプログラム
であり
ホームページのファイル(HTMLファイル)とJavaのプログラムが合体したもの
です。
詳しく書くよ
順番に見ていきましょう。
まずは予備知識として「プログラミング言語」と「Java」について簡単に説明します。
「そんなの説明されなくても知ってるよ!」な人は適当に読み飛ばしてください。
プログラミング言語は「プログラムの元ネタ(ソースコード)を書くときに使う言葉」です。
一般的なプログラムというのは、まず人間語で元ネタを書き、それをコンピュータさんが分かる言葉に翻訳することで完成します。
この「元ネタ」を書くときに使う言語がプログラミング言語です。
Javaは「一度書けば、どこでも動く」の理念で作られたプログラミング言語です。
プログラムの元ネタを書くときに使う言葉のひとつです。
Javaのプログラムは、どんな環境でも動くということに(建前上は)なっています。
ちなみに、Javaが「オブジェクト指向」という用語を世間一般に流行らせました。
以上を踏まえて、本題に入ります。
Javaを生み出した人は、このプログラミング言語を使って、いろいろなプログラムを作れるようにしました。
その中のひとつに、Webサーバ(ホームページのファイルを置くコンピュータ)で動くJavaプログラムがあります。
このJavaプログラムを「Java Servlet(サーブレット、Servlet)」と言います。
この
Java Servletさんの親戚
が「JSP」です。
「JavaServer Pages(ジャヴァサーバ・ページズ)」を省略して「JSP」ね。
……というのは以前の名前です。
現在では「Jakarta Server Pages(ジャカルタ・サーバ・ページズ)」を省略して「JSP」です。
※「Jakarta Server Pages」を何となく日本語にすると「ジャカルタ?給仕人ページ」となります。[詳細]
Java Servletさんは、がっつりプログラムです。
動かすには、自分でコンパイルして配置しなくてはなりません。
それに対して、JSPさんは基本的にはホームページのファイル(HTMLファイル)です。
ただし、その中に、好きにJavaのコードを埋め込めます。
PHPやASPでプログラムを作るときと同じようなイメージです。
「百聞は一見に如かず」と言いますからね。
実際のJSPのコードを見てみましょう。
JSPのコードは、例えば以下のように書きます。
<html>
<head><title>はろーわーるど</title></head>
<body>
<h1>はろーわーるど</h1>
<%
String word1 = "Hello World!";
out.println(word1);
%>
</body>
</html>
Javaのプログラム部分は
<%
String word1 = "Hello World!";
out.println(word1);
%>
です。
あとはHTML部分になります。
いかがでしょう?
HTMLファイルの中にJavaのコードが埋め込まれていますよね。
これがJSPです。
このJSPさんですが、実際にお仕事をするときはJava Servletに変身します。
お仕事の依頼が来ると「サーブレットコンテナ」と呼ばれるJava Servletを動かすソフトによってJava Servletに変換され、Java Servletとしてお仕事をするのです。
そんな感じなので、JSPとJava Servletは同じといえば同じです。
単に
1.プログラムの作り方が違う
2.お仕事が始まるときの手順が違う
だけです。
「1.」に関しては、Java Servletが普通のJavaっぽい書き方になるのに対し、JSPはPHPっぽい書き方になります。
「2.」に関しては、JSPはお仕事が始まるときに、Java Servletに変身する工程が発生します。
それ以外、実際にお仕事をしているときの姿は同じ(どちらもJava Servlet)です。
一言でまとめるよ
まぁ「JSP」って単語が出てきたら「HTMLファイル
(ホームページのファイル)とJavaのプログラムが合体したものなんだな~」と お考えください。
おまけ
■訳してみるよ
「JSP」は「JavaServer Pages(ジャヴァサーバ・ページズ)」とか「Jakarta Server Pages(ジャカルタ・サーバ・ページズ)」の略です。
「Java(ジャヴァ)」はプログラミング言語の「Java」です。
「Jakarta(ジャカルタ)」は……何でしょ?
地名の「ジャカルタ」ですかね。
「server(サーバ)」の意味は「仕える人」とか「給仕人」とかです。
「pages(ページズ)」は「page(ページ)」の複数形です。
「page(ページ)」はカタカナで「ページ」で分かりますかね。
何となく くっつけると
Java(ジャカルタ)の給仕人のページ
となります。






