[Java][JSP] EclipseでのJSP作成
今回は、Eclipseを用いてJSPを作成してみます。
まず、Eclipseを起動します。
プロジェクトは、こちらの記事でServletを作成したときのものをそのまま流用します。
●JSPファイルの作成
下図の赤丸の位置に「TestJSP.jsp」ファイルを作成します。
「WebContent/」の直下に配置すればOKです。
●JSPファイルの記述
<%@ page language="java" contentType="text/html; charset=Shift_JIS" pageEncoding="Windows-31J"%>
<html>
<body>
<%-- JSPコメントだぜ --%>
<!-- HTMLコメントだぜ -->
<p>
<%
String str = "JSPが正しく実行されました!";
out.println(str);
%>
</p>
</body>
</html>
●実行方法
こちらの記事での実行方法と同じように、Tomcatサーバーを実行します。
サーバー起動の完了後、
「http://localhost:8080/TestJavaServlet/TestJSP.jsp」
にアクセスすると、以下の画面が表示されます。
●解説
はじめて記事ですので、少々細かく解説します。
●JSPタグ
まず、このJSPに出てくるJSP専用のタグについて。
①<%@ page ~ %>
pageディレクティブと呼びます。
サーバーからWebページとして出力する際に、「どのように出力するか」を定義するものです。
以下の要素を指定します。
- 「language=java」:java言語であることを示します。
- 「contentType="text/html; charset=Shift_JIS"」:HTMLで出力し、文字コードがShift_JISで出力することを示します。
- 「pageEncoding="Windows-31J"」:このJSPのソースコードがWindows-31Jで記述されていることを示します。
②<%@ ~ %>
ここがJSPを記述する場所です。(具体的な名前は知りません)
任意のJavaコードを記述することができます。
が、ガッツリJavaコードを書くことは何が何でも推奨致しません!!!!。
納品コードを書く際は、JSPはViewとして実装するはずですので、実装コードはJSPに書くべきではないのです。
「整形コードだったら・・・」という声も出てきそうですが、それも推奨致しません。
整形コードは「整形パターン」というものを定義し、それに従って記述すべきです。
-----------------------------
例)日付の場合
Java内のデータの持ち方:YYYYMMDD
出力方式①:YYYY/MM/DD
出力方式②:[明治|大正|昭和|平成]YY年MM月DD日
-----------------------------
このような場合、JSPコードにいちいち日付変換コードを書いていたら、
「法律が変わったのでフォーマットが変わります」と言われたときに号泣することになります。
ちゃんとビジネスロジックにユーティリティを作りましょう。
という事で結論:
JSPには基本的に値の取得コードしか記述しない!!!
ただし、繰り返しのような動的なページは「カスタムタグ」というものを使って実装します。
これは別稿にて解説したいと思います。
③<%--- ~ ---%>
JSPコメントと呼びます。
JSPファイルのみに表示され、HTML化されてWebブラウザに届いたときには消えています。
表示されたHTMLソースは以下のようになっているはずです。(JSPコメントは表示されない)
今回は以上です。
スポンサードリンク
関連記事
-
[Java][基本] ループ処理(for文)
Javaのループ処理の基本である、for文を解説します。 ●文法 for( [①初期化];
-
[Java][MySQL] JavaからMySQLを使う方法
MySQLは、フリーでありながら商用としても使用できるパワーを持つデータベース(RDB)です。
-
[Java][Spring] Spring3でDIしてみる!(アノテーション使用)
Spring3を使って、一番基本的な形のプログラムを作成してみます。 今回は、アノテーションを
-
[Java][Jersey] JerseyでRESTfulなJAX-RS Webサービス作成
こんにちは、keiです。 今回はRESTfulなWeb Serviceの作成を行っていきます。
-
[Java] クラスとインスタンス
こんにちは。 クラスとインスタンスについて解説します。 インスタンスは「オブジェクト」とも言
-
[Java][Spring] DIする方式を細かく見てみる① @ScopeでのSingletonとPrototypeの指定
今回は@Scopeアノテーションを用いて、オブジェクトをDIする方式を選択してみます。 ●解説
-
[Java] Apache POIでExcel操作!
Apache POIをまずは使ってみようという方(自分も含め)のメモ 導入 Maven htt
-
[Java] テキストファイルの読み込み方法
こんにちは、今回はテキストファイルをJavaで読む方法を紹介します。 標準で提供されているクラ
-
[Java][基本] mainメソッドの書き方
こんにちはkeiです。 Javaの基本として、意外と知らないmain関数について解説します。
-
[Java][Eclipse] Mavenが利用可能な動的Webプロジェクトの作成
こんにちは、keiです。 今回は、Mavenが利用可能な動的Webプロジェクトの作成について解