Hello, Java Servlet World!
Posted on 2月 14th, 2012 by cx20
Java Servlet
Java Servlet は Java EE 周辺技術の一つで Web サーバーで Java プログラムを動作させる技術である。
サーブレットの実行環境は Web コンテナまたはサーブレットコンテナと呼ばれ、Apache Tomcat が使われることが多い。Tomcat は雄猫を意味する。
Java Servlet の類似技術としては、JSP(JavaServer Pages)、PHP、ASP、APS.NET 等がある。
CGI が実行時にプロセスを起動するのに対して、Java Servlet はメモリに常駐して実行時に軽量スレッドとして動作する為、効率が良い。
なお、Java EE 周辺技術のバージョンは以下のような対応になっている。
J2EE |
Servlet |
JSP |
EL |
JSTL |
JSF |
EJB |
J2EE 1.2 |
2.2 |
1.1 |
– |
– |
– |
1.1 |
J2EE 1.3 |
2.3 |
1.2 |
– |
1.0 |
– |
2.0 |
J2EE 1.4 |
2.4 |
2.0 |
2.0 |
1.1 |
– |
2.1 |
Java EE 5 |
2.5 |
2.1 |
2.1 |
1.2 |
1.2 |
3.0 |
Java EE 6 |
3.0 |
2.2 |
2.2 |
1.2 |
2.0 |
3.1 |
ソースコード(Java)
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class Hello 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>" );
out.println( " <title>Hello, World!</title>" );
out.println( " </head>" );
out.println( " <body>" );
out.println( " <p>Hello, Java Servlet World!</p>" );
out.println( " </body>" );
out.println( "</html>" );
}
} |
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class Hello 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>" );
out.println( " <title>Hello, World!</title>" );
out.println( " </head>" );
out.println( " <body>" );
out.println( " <p>Hello, Java Servlet World!</p>" );
out.println( " </body>" );
out.println( "</html>" );
}
}
実行方法
ディレクトリ構成
/hello … 公開用フォルダ
/WEB-INF … アプリケーション設定ファイル配置場所
/classes … クラスファイル配置場所
1. モジュールのコンパイル
javac -cp $CATALINA_HOME/lib/servlet-api.jar:. Hello.java
2. モジュールの配置
WEB-INF/classes
3. WEB-INF/web.xml の記載 |
ディレクトリ構成
/hello … 公開用フォルダ
/WEB-INF … アプリケーション設定ファイル配置場所
/classes … クラスファイル配置場所
1. モジュールのコンパイル
javac -cp $CATALINA_HOME/lib/servlet-api.jar:. Hello.java
2. モジュールの配置
WEB-INF/classes
3. WEB-INF/web.xml の記載
<?xml version="1.0"?>
<web-app>
<servlet>
<servlet-name>Hello</servlet-name>
<servlet-class>Hello</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Hello</servlet-name>
<url-pattern>/servlet/Hello</url-pattern>
</servlet-mapping>
</web-app> |
<?xml version="1.0"?>
<web-app>
<servlet>
<servlet-name>Hello</servlet-name>
<servlet-class>Hello</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Hello</servlet-name>
<url-pattern>/servlet/Hello</url-pattern>
</servlet-mapping>
</web-app>
4. ブラウザで表示
http://localhost/hello/servlet/Hello |
4. ブラウザで表示
http://localhost/hello/servlet/Hello
実行結果
Hello, Java Servlet World! |
Hello, Java Servlet World!
Tags: Servlet
Categories: Java, Servlet