JSPの基本 J2EE I (データベース論) 第8回 / 2004-06-16 お知らせ 第1回レポート課題を出しています。締め 切りは6月16日(水)です。 http://www.wakhok.ac.jp/~tomoharu /db2004/ ここでの内容 JSPの基本について理解する。 Webアプリケーションの仕組み (1) 3層モデル J2EEの基本パターン Webアプリケーションの仕組み (2) Servlet と JSP Webアプリケーションでは、ユーザからの 入力があると、その入力に応じたページを 「動的に」作成する。 Javaでは Servlet と JSP を使う。 どちらも「Webコンテナ」と呼ばれる環境の 中で動く。 Webアプリケーションの仕組み (3) Servlet と JSP Servlet JSP HttpServlet を継承する Javaプログラム。 HTML を埋め込める ほとんどHTML Javaプログラムを埋め込める Webコンテナの内部ではServlet に変換される 普通は Servlet と JSP を組み合わせて使う。 JSP とは? JavaServer Pages の略 HTML のソースに次のものを埋め込んで いる。 特殊なタグ Javaプログラム Webコンテナの内部でServlet (Javaプログ ラム) に変換される JSP のサンプルから (1) 特殊なタグとJavaのプログラム <% for (int i = 1; i <=5; i++) { %> <p>サンプル <%= i %></p> <% } %> JSP のサンプルから (2) for 文の対応関係 <% for (int i = 1; i <=5; i++) { %> 出力例) <p> サンプル<%= i %> </p> <% } %> サンプル サンプル サンプル サンプル サンプル 1 2 3 4 5 JSP の要素 (1) ディレクティブ JSPページ全体に関わること <%@ page pageEncoding=“Shift_JIS” page contentType=“text/html; charset=Shift_JIS” %> <%@ page import=“java.uti.Date” %> JSP の要素 (2) 宣言 JSP ページで利用される変数 変換された後の Servlet では、クラス中の フィールドとなる。 <%! int i = 0; %> <%! Circle c = new Circle(2.0); %> JSP の要素 (3) 式 Javaの式 返す値に toString メソッドを適用して得ら れる文字列に置き換わる <%= i %> <%= df.format(d) %> JSP の要素 (4) スクリプトレット Javaのプログラム <% for (int i = 1; i <=5; i++) { %> <p>サンプル <%= i %></p> <% } %> 現在の日時を表示する サンプル (1) <%@ page pageEncoding="Shift_JIS" contentType=“text/html; charset=Shift_JIS" %> <%@ page import="java.util.Date" %> <%@ page import="java.text.DateFormat" %> <html> <head> <title>JSP: 現在の日時を示すサンプル</title> </head> 現在の日時を表示する サンプル (2) <% Date d = new Date(); DateFormat df = DateFormat.getDateTimeInstance(); %> <p> いまは<br /> <%= df.format(d) %> <br />です。 </p> Tomcat Jakarta Project が作成している Webコン テナ Javaで書かれている オープンソース Servlet や JSP を動かすために必要 Apache に組み込んで使える Tomcat 単独でも Webサーバとして使える Tomcat のインストール J2SE が必要 環境変数をセットする JAVA_HOME と CATALINA_HOME それぞれ、Java と Tomcat がインストールさ れているフォルダを指定する ポート番号を変更する (本学実習室の場 合) インストール時に「NTサービス」にチェック を入れない方がよい。 Tomcatに Webアプリケーションを置く %CATALINA_HOME%/webapps/ に配置 その中に test フォルダを作成する。 ひとつのファイル (war ファイル) にまとめても良い。 test/ | |-- WEB-INF/ --- web.xml | |- classes/ | |- lib/ |-- loop.jsp 必須 Servlet などのクラス 使用するライブラリ JSP web.xml (1) Webアプリケーションの設定を記述する XML ファイル このファイルがなければ Webアプリケー ションは動作しない。 web.xml (2) <?xml version="1.0" encoding="ISO-8859-1"?> <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd"> <web-app> <display-name>JSP_Samples</display-name> <description> JSP Samples </description> </web-app> web.xml (3) <web-app> <display-name> JSP_Samples </display-name> <description> JSP Samples </description> </web-app> Webアプリケーションへの アクセス どこのホストで動いている? どのポートで動いている? どのWebアプリケーションを動かす? この例では http://localhost:8080/test/loop.jsp
© Copyright 2024 ExpyDoc