Servletと、JSPは Java言語を利用します。
サーバ側で動作するJavaプログラムで、クライアントのWebブラウザとやりとりします。
DBと連携したり、Session管理、Cookieが扱えたり、 いろんなことができる反面、
まさにプログラミング言語なので、難しいです。
またHTMLでは必要のなかった、コンパイルも必要になります。
Servletは、CGIのように起動のたびにプロセスを作らず、それぞれ別スレッド
として動くのでCGIよりCPU負荷が軽いです。(PHPやASPも同様の利点があります)
またスレッドなのでライフサイクル(ロード、初期化、処理、終了)を保持します。
見た目はCGIに似ていて、プログラムのなかに埋め込んだprintで、HTMLタグを
書かせるという形式。
Servletはこんなかんじ。
@HelloWorldServlet.java
import javax.servlet.http.*;
import javax.servlet.ServletException;
import java.io.PrintWriter;
import java.io.IOException;
public class HelloWorldServlet extends HttpServlet {
public void doGet
(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.println("<html>");
out.println("<head><title> Servlet Sample </title></head>");
out.println("<body> Servlet Sample </body>");
out.println("</html>");
}
}
JSPのメリットは、だいたいServletと同じ。
見た目はPHPやASPに似ていて、HTMLのなかにJavaプログラムを埋め込む形式。
両者の違いは、Servletは表示部分のHTMLを書くのが大変。
JSPは表示部分は楽にかけるけど処理部分を書くのが大変
なんでうまく使い分けてください。
JSPはこんなかんじ。
@sample.jsp
<%@ page contentType="text/html" session="false" %>
<html>
<head><title> Java Server Pages </title></head>
<body>
<% out.println("JSP Sapmel"); %>
</body>
</html>
|