検索

キーワード


目次

【Java】JSPの暗黙オブジェクト

  • 公開日:2020-10-21 16:32:14
  • 最終更新日:2020-11-13 21:42:05
【Java】JSPの暗黙オブジェクト

Workteria(ワークテリア)では難易度の高いものから低いものまで、スキルや経験に合わせた案件を多数揃えています。会員登録は無料ですので、ぜひ会員登録してご希望の案件を探してみてください!

フリーランス/正社員のエンジニアとして活躍するには、ご自身のスキルや経験に合わせた仕事を選ぶことが大切です。ご希望の案件がみつからない場合はお気軽にお問い合わせください!ユーザ満足度の高いキャリアコンサルタントが在籍していますので、希望条件や悩み事などなんでもご相談ください。ご希望にピッタリの案件をご紹介させていただきます。

こんにちは。エンジニアの新田です!

ここでは、システムエンジニアとして働いている私が、システム開発手法や開発言語について紹介していこうと思います。

今回は、JSPの暗黙オブジェクトについて紹介します。

Javaについて勉強している方、Webアプリケーションを構築したいと思っている方の参考になれば幸いです!

関連記事:【Java】JSPの基本的な構文 【Java】JSPのEL式


JSPの暗黙オブジェクト

宣言無しで最初から利用できるオブジェクトが暗黙オブジェクトです。

サーブレットへの変換時に自動で宣言・インスタンス化してくれもので、スクリプトレットや式の中で利用することができます。


使用頻度の高い暗黙オブジェクト


request

javax.servlet.http.HttpServletRequestクラスのオブジェクトで、クライアントから送信されたパラメータ、ヘッダー情報、Cookie等を取得する事ができます。

ただし、pageディレクティブのsession属性にfalseが設定されている場合、sessionオブジェクトは使用できません。

【requestオブジェクトの使用例

以下のようなリクエストが送信されるものとする

http://localhost:8080/contextroot/test.jsp?name=tanaka

test.jsp

<%@ page contentType="text/html; charset=UTF-8" %>
<HTML>
    <BODY>

// リクエストパラメータから値を取得
<%
String name =request.getParameter("name");
%>

こんにちは、<%= name %>さん
    </BODY>
</HTML>



session

javax.servlet.http.HttpSessionクラスのオブジェクトで、クライアントとサーバ間のセッション情報を管理する事ができます。

ただし、pageディレクティブのsession属性にfalseが設定されている場合、sessionオブジェクトは使用できません。

【sessionオブジェクトの使用例

<%@ page contentType="text/html; charset=UTF-8" %>
<HTML>
    <BODY>
<%
// セッションスコープに値を設定
session.setAttribute("name","佐藤");
%>

// セッションスコープから値を取得
<%
String name =(String)session.getAttribute("name");
%>

こんにちは、<%= name %>さん
    </BODY>
</HTML>



out

javax.servlet.jsp.JspWriterクラスクラスのオブジェクトで、ブラウザへの出力やバッファ処理など主に出力系の処理が実行できます。

スクリプトレットでHTMLを出力するときに使います。

【outオブジェクトの使用例

<%@ page contentType="text/html; charset=UTF-8" %>
<HTML>
    <BODY>

<%
// スクリプトレット内でHTMLを出力
out.println("こんにちは、ゲストさん");
%>

    </BODY>
</HTML>



response

javax.servlet.http.HttpServletResponseクラスのオブジェクトで、クライアントに送信するレスポンスにアクセスできます。

クライアントに返す、ヘッダー情報、HTTPステータス、Cookieなどを設定することができます。



その他の暗黙オブジェクト

pageContext

javax.servlet.jsp.PageContextクラスのオブジェクト変数で、JSPで使われるすべてのオブジェクトを管理することができます。

すべての暗黙オブジェクトを参照するメソッド、すべてのスコープのデータを管理するメソッドを持っています。


application

javax.servlet.ServletContextクラスのオブジェクト変数で、コンテキスト全体に関する操作を行う際に使用します。

applicationスコープを持つデータの管理、コンテキスト全体で共有する初期化パラメータの取得などに使用します。


page

javax.servlet.jsp.HttpJspPageクラスのオブジェクトだが、java.lang.Objectクラスにキャストされている。

JSPページ自身を表す。「this」と同じ。あまり使用されることはない。


config

javax.servlet.ServletConfigクラスのオブジェクトで、web.xmlで定義した初期化パラメータにアクセスできます。

web.xmlファイルに指定された初期化パラメータ(<init-param>タグ)を取得することができます。






関連記事:【Java】JSPの基本的な構文 【Java】JSPのEL式




【著者】

新田

JavaメインのWebアプリケーション開発に多く携わっています。
Javaの基本的な部分の紹介や、これまで経験したシステム開発手法、新しい技術についても紹介していこうと思います。

編集した記事一覧

正社員/フリーランスの方でこのようなお悩みありませんか?

  • 自分に合う案件を定期的に紹介してもらいたい
  • 週2、リモートワークなど自由な働き方をしてみたい
  • 面倒な案件探し・契約周りは任せて仕事に集中したい

そのような方はぜひ、Workteriaサイトをご利用ください!

  • 定期的にご本人に合う高額案件を紹介

  • リモートワークなど自由な働き方ができる案件多数

  • 専属エージェントが契約や請求をトータルサポート

よく読まれている記事
【Java】JSPでタグライブラリを使う(JSTL)

【Java】JSPでタグライブラリを使う(JSTL)

こんにちは。エンジニアの新田です!ここでは、システムエンジニアとして働いている私が、システム開発手法や開発言語について紹介していこうと思います。今回は、JSPの標準タグライブラリ「JSTL」について紹介します。Javaについて勉強している方、Webアプリケーションを構築したいと思っている方の参考になれば幸いです!関連記事リンク: 【Java】JSPの基本的な構文/【Java】JSPのアクションタグ

【Java】Stringクラス文字列を操作するメソッドの使い方まとめ!実例も紹介!

【Java】Stringクラス文字列を操作するメソッドの使い方まとめ!実例も紹介!

こんにちは。新人エンジニアのサトウです。システムエンジニアとして駆け出したばかりですが、初心者なりの視点でわかりやすい記事を心がけていますので参考になればうれしいです。プログラム初心者✅にも、プログラムに興味がある人✨も、短い時間で簡単にできますのでぜひこの記事を読んで試してみてください!そもそもStringとは何?『 String 』... Java言語において文字列のデータ型を指します。基本デ

【Java】文字列の置き換え(String#format)!エスケープシーケンスのまとめも!!

【Java】文字列の置き換え(String#format)!エスケープシーケンスのまとめも!!

こんにちは。新人エンジニアのサトウです。システムエンジニアとして駆け出したばかりですが、初心者なりの視点でわかりやすい記事を心がけていますので参考になればうれしいです。プログラム初心者✅にも、プログラムに興味がある人✨も、短い時間で簡単にできますのでぜひこの記事を読んで試してみてください!Stringクラスformatメソッドの文字列整形【java.utilパッケージ】Formatterクラスfo

【Java】文字列格納後に変更可能!?StringBufferクラスとStringBuilderクラス!

【Java】文字列格納後に変更可能!?StringBufferクラスとStringBuilderクラス!

こんにちは。新人エンジニアのサトウです。システムエンジニアとして駆け出したばかりですが、初心者なりの視点でわかりやすい記事を心がけていますので参考になればうれしいです。プログラム初心者にも✅、プログラムに興味がある人✨も、短い時間で簡単にできますのでぜひこの記事を読んで試してみてください!文字列を扱う3つのクラス【java.langパッケージ】java.langパッケージの文字列を扱うクラスにはS

【Java】値?変数?型??しっかり解説!『データ型(プリミティブ型と参照型)』

【Java】値?変数?型??しっかり解説!『データ型(プリミティブ型と参照型)』

こんにちは。新人エンジニアのサトウです。システムエンジニアとして駆け出したばかりですが、初心者なりの視点でわかりやすい記事を心がけていますので参考になればうれしいです。プログラム初心者✅にも、プログラムに興味がある人✨も、短い時間で簡単にできますのでぜひこの記事を読んで試してみてください!プリミティブ型と参照型プログラム開発では型を持った変数を使ってデータのやり取りをしますが、データ型によって仕様