JSP を使用すると、HTML、Java、およびスクリプトコードを含むダイナミックページを作成できます。初めてクライアントが JSP を要求するときにページは Java サーブレットに変換およびコンパイルされるので、JSP は高いパフォーマンスを実現します。実行時には、コンパイル済みサーブレットを実行します。
Compass Travel チュートリアルアプリケーションでは、アドベンチャー旅コースの説明、予約情報、旅行予約を参照できます。アプリケーションのスタティックおよびダイナミックな部分を作成するには、HTML、サーブレット、JSP、Java Beans、および EJB を使用します。
チュートリアルレッスンを開始するには、レッスン1の「サーブレットのチュートリアル」を参照してください。この章では、チュートリアルのホームページに JSP コードを追加し、JSP を使用してデータベースから情報を検索する JavaBeans にアクセスします。
チュートリアルアプリケーションのホームページである home.jsp では、次の JSP 要素をコーディングします。
home.jsp では、顧客が予約できる旅行のリストを表示します。このレッスンでは、データベース情報にアクセスする、Java コードが埋め込まれた JSP の構築方法について説明します。
<%@ page import="java.sql.*,javax.sql.*,javax.naming.*"%>
<jsp:include page="header.jsp" flush="true"/> <jsp:include page="welcome.jsp" flush="true"/>
<%@ include file="footer.htm"%>
<% java.text.NumberFormat nf = java.text.NumberFormat.getCurrencyInstance(); String sql="SELECT trip_id, name, teaser, price FROM trip"; Connection connection=null; Statement stmt=null; ResultSet trips=null; try { InitialContext ctx=new InitialContext(); DataSource ds=(DataSource) ctx.lookup("compass"); connection=ds.getConnection(); stmt=connection.createStatement(); trips=stmt.executeQuery(sql); while (trips.next()) { %><!-- 旅行情報の出力 (tripID はリンクに使用されていますが、名前は表示されているもの です。)--> <tr> <td class="contentBG"> <a href="tripdetail.jsp?tripId=<%=trips.getInt("trip_id") %>"> <%=trips.getString("name") %></a></td> <td class="contentBG"><%=trips.getString("teaser") %></td> <td class="contentBG"><%=nf.format(trips.getDouble("price")) %></td> </tr> <% } } catch (Exception e) { out.println(e); } finally { connection.close(); } %>
メモ: 8101 または tutorial サーバを作成したときに JRun によって割り当てられた Web サーバのポート番号を使用します ( を参照)。
アドベンチャー旅コース情報のテーブルが表示されます。