• ベストアンサー

jspとサーブレット

jspはサーブレットに比べるとソースファイルを生成しなければならない分、処理速度が遅くなると書かれてたのですが、ソースファイルを生成とはどういうことなのかわかりません。htmlに埋め込まれたJAVAを取り出すということでしょうか? またサーブレットもJSPもクライアントから要求がきてからプログラムをコンパイルしてるのでしょうか?すなわちコンパイルされてないままWEBサーバに保管されてるのですか? 2点よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • LancerVII
  • ベストアンサー率51% (1060/2054)
回答No.1

こんにちは。 tomcatの場合、workディレクトリの中を見ていくと、 XXX_jsp.javaというファイルが出来ており、それを生成されたソースファイル と言っているのかなと思います。 開いてみるとわかりますが、全てJavaのコードに書き換えられています。 それをコンパイルして.classファイルが同じディレクトリに出来ます。 サーブレットはコンパイルしたものが最初から配置されていますが、 JSPに関しては初回リクエスト時にコンパイルを実行します。 jspをコンパイルしたものが無い場合にコンパイルをかけるので 最初は遅く感じますが、一度用意されてしまえばそんなに遅くは無いと思います。

hirohiro8888
質問者

お礼

回答ありがとうございます。初回リクエストのみサーブレットエンジンがコンパイルするのでしょうか?

その他の回答 (2)

回答No.3

そうです。 参考URLを見て下さい。 No.1さんへのお礼に記述してある質問にも答えが書いてあります。

参考URL:
http://www.atmarkit.co.jp/fjava/javatips/144jspservlet051.html
回答No.2

JSPもサーブレットですよ。 No.1さんがおっしゃる通り、初回のみjavaソースの生成、コンパイルを行います。 コンパイルされたソースを見ればわかりますが、サーブレットになっていますよ。

hirohiro8888
質問者

お礼

回答ありがとうございます、 サーブレットエンジンがコンパイルとソースファイルの生成をするのでしょうか?

関連するQ&A