naobe @ ウィキ

JSP

最終更新:

Bot(ページ名リンク)

- view
管理者のみ編集可

JavaBeansの使用

JavaBeansの作成

<jsp:useBean id="varName" class="a.b.Foo"/>
"a.b.Foo"のクラスのインスタンスを"varName"という名前の変数として作成する。以下と同じ。
 <%
   Foo varName = new Foo();
 %>

JavaBeansの出力

 <jsp:getProperty name="varName" property="title"/>
"varName"という名前のインスタンスのプロパティ"title"を出力する。以下と同じ。
 <%= varName.getTitle() %>

JavaBeansへのプロパティ設定

 <jsp:setProperty name="varName" property="title" value="TITLE" />
"varName"という名前のインスタンスのプロパティ"title"に"TITLE"を設定する。以下と同じ。
 <% varName.setTitle("TITLE"); %>

カスタムタグ


ページキャッシュの無効化

response_header.jsp
<%@ page contentType="text/html;charset=Shift_JIS" import="java.util.*" %>
<%
Calendar objCal1=Calendar.getInstance();
Calendar objCal2=Calendar.getInstance();
objCal2.set(1970,0,1,0,0,0);
response.setDateHeader("Last-Modified",objCal1.getTime().getTime());
response.setDateHeader("Expires",objCal2.getTime().getTime());
response.setHeader("pragma","no-cache");
response.setHeader("Cache-Control","no-cache");
%>

EL式

JSP2.0より追加。 http://www.techscore.com/tech/J2EE/JSP/12.html 参照
単項目:${スコープ名(省略可).オブジェクト名.プロパティ名} 
Listまたは配列:${スコープ名(省略可).オブジェクト名[インデックス]} 
Map:${スコープ名(省略可).オブジェクト名["キー名"]}

スコープ ELでの記述
Sessionスコープ sessionScope
Applicationスコープ applicationScope
Requestスコープ requestScope
Pageスコープ pageScope

オブジェクト名 内容
pageContext JSPファイルのコンテキスト。context、session、requestの各オブジェクトにアクセスできます。
param リクエストパラメータと値のマップ。使用例)${param.arg1}
paramValues リクエストパラメータと配列値のマップ。使用例)${paramValue.arg[0]}
header ヘッダ名と値のマップ。使用例)${header['user-agent']}
headerValues ヘッダ名と配列のマップ。使用例)${headerValues['user-agent'][0]}
initParam 初期化パラメータを持つMapオブジェクト。使用例)${initParam["param1"]}
cookie cookie名とcookieオブジェクトを対応させたMapオブジェクト。使用例)${cookie["param1"].value}

コンテキストルート

${pageContext.request.contextPath}

JSTLタグ

Tomcatでの設定


JSPタグ

http://tag.main.jp/index.html 参照
jspに標準で実装されているタグ

<jsp:include>タグ

指定したファイルの処理を実行し、結果を表示する。
【例1】
 <jsp:include page="/send.jsp" />

【例2】パラメータを渡す
 <% request.setCharacterEncoding("utf-8"); %>
 <jsp:include page="/send.jsp" >
    <jsp:param name="userName" value="hoge" />
 <jsp:include/>

<jsp:parameter>タグ

パラメータつきリクエストを渡す。<jsp:include>、<jsp:forward>のボディ。
文字化け回避には、<% request.setCharacterEncoding("utf-8"); %>を追加
http://d.hatena.ne.jp/ukonlly/20100522/1274503780 参照
ウィキ募集バナー