[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] クラスとインスタンス

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

記事を読む

no image

[Java][Servlet] EclipseでのJavaServlet作成

こんにちは、今回はEclipseを使用してJavaServletを作成します。 Eclipse

記事を読む

no image

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

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

記事を読む

no image

[Java][Servlet][JSP] ServletからJSPへの転送

こんにちは。 今回は、「Servletでリクエストを受けて、JSPで表示する。」方法を解説しま

記事を読む

no image

[Java][Framework] Spring BootのJPAでDB接続した際のEntityキャッシュのクリア方法

Spring BootのJPAでDBアクセスした際に、処理を一定量こなすと、Heapが足りなくな

記事を読む

no image

[java] 文字列の一部を切り取る方法(substring)

こんにちは。 今回は文字列の一部を切り取る方法について解説します。 具体的には、String

記事を読む

no image

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

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

記事を読む

no image

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

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

記事を読む

no image

[Java] 日付の計算方法(DateFormat、Date、Calendar)

こんにちは、kei0310です。 Javaで日付を計算する方法について解説します。 まず

記事を読む

no image

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

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

記事を読む

スポンサードリンク

Message

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

スポンサードリンク

no image
[git] Windowsへのインストール(Git for Windows)

概要 Windows環境にGitをインストールします。 インストー

no image
[Fluentd] WindowsにFluentdをインストールする

WindowsにFluentdをインストールしたときのメモ 参考にさ

no image
[Re:dash] BigQuery接続で日本語タイトルを出す(v2.0.0)

BigQueryは現在マルチバイトを含むSQLを発行することができない

no image
[Python] Nullの判定方法(None)

Nullの判定方法(None) 表記方法 Pythonでは、Nul

no image
[Python] 型の検査・判定

Pythonでの型の検査・判定方法 isinstance サン

→もっと見る

  • 2018年12月
    « 6月    
     12
    3456789
    10111213141516
    17181920212223
    24252627282930
    31  
  • 2018年12月
    « 6月    
     12
    3456789
    10111213141516
    17181920212223
    24252627282930
    31  
PAGE TOP ↑