■サーブレット
サーブレットとは、プログラミング言語のJavaを使用したサーバサイドのプログラムを実装する手法である(サーブレットクラス)。
サーブレットクラスは、アプリケーションサーバ(APサーバ)上で実行する。
一般的に、サーブレットクラスはブラウザからのリクエストによって実行し、その結果をHTMLで出力する。そして、出力したHTMLをブラウザにレスポンスする。
■サーブレットクラスの書き方
以下にサーブレットクラスの基本的な書き方を示す。
// サーブレット関係のクラスをインポートする
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
// HttpServletクラスを継承する
public class ServletSample extends HttpServlet{
// HttpServletクラスのdoGet()メソッドをオーバーライド
protected void doGet(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException{
// ここに処理を書く。
}
}
■サーブレットクラス内でHTMLを出力
今回はサーブレットクラスのdoGet()メソッドをオーバーライドし、サーブレットクラス内でHTML出力を実装する。
なお、プロジェクトの階層構造は以下に示す。
・「JspServletSample」プロジェクトの階層構造
JspServletSample
|--build
| |--classes
| | |--servlet
| | | |--ServletSample.class
|--src
| |--main
| | |--java
| | | |--servlet
| | | | |--ServletSample.java
| | |--webapp
| | | |--META-INF
| | | | |--MANIFEST.MF
| | | |--WEB-INF
| | | | |--lib
※「./src/main/java/servlet」の「servlet」はパッケージ名
▼サンプルコード
package servlet;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
// URLパターンを指定
@WebServlet("/ServletSample")
public class ServletSample extends HttpServlet{
private static final long serialVersionUID = 1L;
protected void doGet(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException{
// HTMLを出力
response.setContentType("text/html; charset=UTF-8");
PrintWriter out = response.getWriter();
out.println("<html>");
out.println("<head>");
out.println("<title>ページタイトル</title>");
out.println("<body>");
out.println("<p>サーブレットサンプルページ</p>");
out.println("</body>");
}
}
コメント
[…] 【Java】サーブレット内でHTMLを出力する■サーブレットサーブレットとは、プログラミング言語のJavaを使用したサーバサイドのプログラムを実装する手法である(サーブレットクラス) […]