[Java][JSP] EclipseでのJSP作成

公開日: : Java , ,

今回は、Eclipseを用いてJSPを作成してみます。

まず、Eclipseを起動します。
プロジェクトは、こちらの記事でServletを作成したときのものをそのまま流用します。

●JSPファイルの作成

下図の赤丸の位置に「TestJSP.jsp」ファイルを作成します。
「WebContent/」の直下に配置すればOKです。
JSP01

●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」
にアクセスすると、以下の画面が表示されます。
JSP02

●解説

はじめて記事ですので、少々細かく解説します。

●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コメントは表示されない)
JSP03

今回は以上です。

スポンサードリンク

関連記事

no image

[Java][基本] ループ処理(for文)

Javaのループ処理の基本である、for文を解説します。 ●文法 for( [①初期化];

記事を読む

no image

[Java][MySQL] JavaからMySQLを使う方法

MySQLは、フリーでありながら商用としても使用できるパワーを持つデータベース(RDB)です。

記事を読む

no image

[Java][Spring] Spring3でDIしてみる!(アノテーション使用)

Spring3を使って、一番基本的な形のプログラムを作成してみます。 今回は、アノテーションを

記事を読む

no image

[Java][Jersey] JerseyでRESTfulなJAX-RS Webサービス作成

こんにちは、keiです。 今回はRESTfulなWeb Serviceの作成を行っていきます。

記事を読む

no image

[Java] クラスとインスタンス

こんにちは。 クラスとインスタンスについて解説します。 インスタンスは「オブジェクト」とも言

記事を読む

no image

[Java][Spring] DIする方式を細かく見てみる① @ScopeでのSingletonとPrototypeの指定

今回は@Scopeアノテーションを用いて、オブジェクトをDIする方式を選択してみます。 ●解説

記事を読む

no image

[Java] Apache POIでExcel操作!

Apache POIをまずは使ってみようという方(自分も含め)のメモ 導入 Maven htt

記事を読む

no image

[Java] テキストファイルの読み込み方法

こんにちは、今回はテキストファイルをJavaで読む方法を紹介します。 標準で提供されているクラ

記事を読む

no image

[Java][基本] mainメソッドの書き方

こんにちはkeiです。 Javaの基本として、意外と知らないmain関数について解説します。

記事を読む

no image

[Java][Eclipse] Mavenが利用可能な動的Webプロジェクトの作成

こんにちは、keiです。 今回は、Mavenが利用可能な動的Webプロジェクトの作成について解

記事を読む

スポンサードリンク

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

スポンサードリンク

no image
CentOSにdockerをインストールしてみた

前置き dockerをcentos7にインストールしてみました

no image
awkでのgsubを使った文字列置換(正規表現)

まえおき bashなどのシェルスクリプトで、lsした結果とかを

no image
bashで並列処理する方法(xargs)

並列処理とは 通常、意識せずにプログラムを書くと、大体の場合は

no image
AWS Redshiftの使用ストレージ容量をクエリで調べる方法

用途 AWS Redshfitのコンソールを見れば、使用中のス

no image
pythonでstorage transfer serviceを使ってみた。

準備 pythonのインストールとかする。 このあたり。

→もっと見る

  • 2024年11月
     123
    45678910
    11121314151617
    18192021222324
    252627282930  
  • 2024年11月
     123
    45678910
    11121314151617
    18192021222324
    252627282930  
PAGE TOP ↑