JSPアクション要素
JSP命令要素は異なり、JSPアクション要素は、要求処理段階において役割を果たす。 JSPアクション要素はXML構文を使用して書かれています。
使用JSPアクションは、動的にHTMLコードは、Javaプラグインのために生成され、ファイルを挿入JavaBeanコンポーネントを再利用し、別のページにユーザーをリダイレクトすることができます。
アクションだけ1つのシンタックス要素である、それは、XML標準に準拠しています。
<jsp:action_name attribute="value" />
アクション要素は、基本的には事前に定義された機能である、JSP仕様は、標準アクションのセットを定義し、それが接頭辞としてJSPを使用して、標準アクション要素が用意されています。
文法 | 説明 |
---|---|
jsp:含みます | ページが要求される文書の導入。 |
jsp:useBeanの | 検索やJavaBeansをインスタンス化します。 |
jsp:setPropertyを | JavaBeanプロパティを設定します。 |
jsp:getPropertyメソッド | JavaBeanのプロパティの出力。 |
jsp:フォワード | 新しいページへの要求。 |
jsp:プラグイン | ブラウザの種類に基づいてJavaプラグインのために生成されたオブジェクトまたはEMBEDタグ。 |
jsp:要素 | 動的なXML要素を定義します。 |
jsp:属性 | 動的に定義されたXML要素の属性を設定します。 |
jsp:ボディ | 動的に定義されたXML要素の内容を設定します。 |
jsp:テキスト | JSPページとドキュメントテンプレートに書かれたテキストを使用します |
共通の属性
id属性とscope属性:すべてのアクション要素は次の2つの属性を持っています。
- id属性:
id属性は、一意にアクション要素は、JSPページで参照することができます識別します。 作成したアクション要素のid値はPageContextに呼び出すことができます。
- scope属性:
この属性には、ライフサイクルの動作要素を識別するために使用されます。 id属性とスコープ属性は直接関連している、scope属性は、関連付けられたオブジェクトIDの有効期間を定義します。 (a)のページ、(b)の要求、(c)のセッション、および(d)アプリケーション:スコープのプロパティは、4つの値を持っています。
<jsp:include>のアクション要素を
<jsp:include>タグをアクション要素は、静的および動的なドキュメントを格納するために使用されます。 ページに指定したファイルのアクションが生成されます。 構文は次のとおりです。
<jsp:include page="相对 URL 地址" flush="true" />
アクションはファイルが要求されているページに挿入された時とは異なる次のとおりです。いつ、どこで、JSP JSPドキュメントファイルに導入された命令は、サーブレットに変換され、含まれて導入されました。
以下は、アクションのリストである、関連するプロパティが含まれています。
プロパティ | 説明 |
---|---|
ページ | ページ相対URLアドレスに含まれています。 |
フラッシュ | キャッシュを更新するかどうかの前にリソース定義が含まれているブール型プロパティです。 |
例
次のように私たちは、コードを次の2つのファイルのdate.jspとmain.jspを定義します。
date.jspファイルコード:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <p> 今天的日期是: <%= (new java.util.Date()).toLocaleString()%> </p>
main.jspファイルコード:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>本教程(w3big.com)</title> </head> <body> <h2>include 动作实例</h2> <jsp:include page="date.jsp" flush="true" /> </body> </html>
サーバーのルートディレクトリに今以上の2つのファイルのアクセスmain.jspファイル。 結果の表示次のように:
include 动作实例 今天的日期是: 2016-6-25 14:08:17
<jsp:useBean>アクション要素
jsp:useBean操作、JSPページで使用するJavaBeansをロードするために使用されます。
それは、私たちは、Javaコンポーネントの再利用の利点を再生することを可能にするため、この機能は非常に便利です。
jsp:useBean操作最も簡単な構文は次のとおりです。
<jsp:useBean id="name" class="package.class" />
クラスがロードされた後、我々は、JSPを介してすることができ、次のいずれかのsetPropertyとのjsp:BeanプロパティのgetPropertyアクションを修正し、取得します。
以下は、useBean操作を関連付けられた属性のリストです。
プロパティ | 説明 |
---|---|
クラス | ビーンの完全なパッケージ名を指定します。 |
タイプ | オブジェクト参照型の変数を指定します。 |
beanName | ()メソッドは、インスタンス化することによってビーンjava.beans.Beansの名前を指定します。 |
setPropertyとのjsp:getPropertyメソッドのアクション要素を具体的な例を与える前に、のは、JSPを見てみましょう:
<jsp:setPropertyを>アクション要素
jsp:二つの方法で、既にインスタンスBeanオブジェクトの属性を設定するためのsetPropertyを。 まず、あなたができるのjsp:次のように、のsetProperty:外の要素(バック)のjspを使用しuseBeanは:
<jsp:useBean id="myName" ... /> ... <jsp:setProperty name="myName" property="someProperty" .../>
この場合は、関係なく、JSPの:useBeanのは、既存の豆を見つけたり、新しいBeanインスタンス、JSPを作成することです:setPropertyをが実行されます。 第二は、JSPを使用することです:JSPへのsetProperty:インテリアのuseBeanの要素、次のように:
<jsp:useBean id="myName" ... > ... <jsp:setProperty name="myName" property="someProperty" .../> </jsp:useBean>
setProperty:この時点では、JSP:既存のインスタンスは、JSPを実行されません使用している場合にのみ、新しいBeanインスタンス内のsetPropertyは、実装されます。
JSP:setPropertyをアクションは、次の表の次の4つのプロパティがあります。
プロパティ | 説明 |
---|---|
名前 | name属性は必須です。 ビーンのプロパティを設定すると言われています。 |
プロパティ | プロパティの属性が必要です。 これは、設定する属性を示します。 特殊な使用法があります:プロパティの値がある場合は "*"すべてのパラメータの名前の要求を示し、ビーンは、名前の一致が対応する属性設定メソッドに渡されます属性。 |
値 | value属性は省略可能です。 この属性は、ビーンのプロパティの値を指定するために使用されます。 標準のvalueOfメソッドを介して、ターゲットクラス内の文字列データは自動的にデジタル、ブール値、ブール、バイト、バイト、文字、文字に変換されます。 例えば、(例えば、「真」)、ブールブールプロパティ値型Boolean.valueOf変換、Integer.valueOf変換によってint型と(例えば「42」など)整数のプロパティ値によって。 param値と使用できませんが、あなたはそれらのいずれかを使用することができます。 |
PARAM | paramが省略可能です。 これは、Beanのプロパティの値として、どのリクエストパラメータを指定します。 現在のリクエストにパラメータがない場合は、何もしない、システムがヌルsetメソッドビーンプロパティに渡されることはありません。 つまり、あなた自身の豆を作ることができるリクエストパラメータが明示的にデフォルトのプロパティ値を変更するには、新しい値を指定した場合にのみ、デフォルトのプロパティ値を提供します。 |
<jsp:getPropertyメソッド>アクション要素
jsp:指定されたBeanのプロパティの値を抽出するためのgetPropertyアクションは、文字列に変換し、出力されます。 構文は次のとおりです。
<jsp:useBean id="myName" ... /> ... <jsp:getProperty name="myName" property="someProperty" .../>
次の表は、getPropertyメソッドに関連付けられているプロパティです。
プロパティ | 説明 |
---|---|
名前 | 取得するためのBeanのプロパティ名。 ビーンを定義する必要があります。 |
プロパティ | これは、豆を抽出するために、プロパティの値を表します |
例
次の例では、私たちは豆を使用します。
package com.w3big.main; public class TestBean { private String message = "本教程"; public String getMessage() { return(message); } public void setMessage(String message) { this.message = message; } }
上記のサンプルファイルTestBean.javaをコンパイルします。
$ javac TestBean.java
コンパイル後のWebContent JSP / WEB-INF /クラス/ COMの下でプロジェクトにファイルをコピーし、ファイルをTestBean.classカレントディレクトリに生成されます/ w3big /メイン(COM / w3big /メインパッケージの電流経路を手動で必要はありません)を作成します。
ここではEclipseのディレクトリ構造は次のとおりです。
ここでは非常に単純な例であり、その機能は豆をロードすることで、そのメッセージ属性の読み取り/設定します。
それでは、main.jspファイルに豆を呼び出してみましょう:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>本教程(w3big.com)</title> </head> <body> <h2>Jsp 使用 JavaBean 实例</h2> <jsp:useBean id="test" class="com.w3big.main.TestBean" /> <jsp:setProperty name="test" property="message" value="本教程..." /> <p>输出信息....</p> <jsp:getProperty name="test" property="message" /> </body> </html>
次のようにブラウザのアクセス、上記の書類の実装では、出力は次のようになります。
<jsp:前方>アクション要素
jsp:forwardアクション別のページに要求。 jsp:forwardタグは、一つだけのプロパティページがあります。 構文は次のとおりです。
<jsp:forward page="相对 URL 地址" />
以下は、前方関連するプロパティです。
プロパティ | 説明 |
---|---|
ページ | ページ属性は、相対URLが含まれています。 直接特定のページの値を動的にJSPページまたはJavaサーブレットすることができます要求の時に計算することができます。 |
例
date.jspとmain.jsp:私たちは二つの文書、すなわちを使用し、次の例。
date.jspファイルのコードは次のとおりです。
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <p> 今天的日期是: <%= (new java.util.Date()).toLocaleString()%> </p>
main.jspファイルコード:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>本教程(w3big.com)</title> </head> <body> <h2>forward 动作实例</h2> <jsp:forward page="date.jsp" /> </body> </html>
サーバーのルートディレクトリに今以上の2つのファイルのアクセスmain.jspファイル。 結果の表示次のように:
今天的日期是: 2016-6-25 14:37:25
<jsp:プラグイン>アクション要素
JSP:pluginアクションは、ブラウザの種類に応じて使用されている、JavaプラグインJavaアプレット必要が通るOBJECTまたはEMBED要素を挿入します。
プラグが存在する必要がない場合は、プラグインをダウンロードし、その後Javaコンポーネントを実行します。 Javaコンポーネントは、アプレットまたはJavaBeanのすることができます。
HTML要素に対応する複数のプラグインアクションは、Javaコンポーネントをフォーマットするための属性。 param要素は、アプレットまたはBeanにパラメータを渡すために使用することができます。
ここでプラグインのアクション要素の典型的な例であります:
<jsp:plugin type="applet" codebase="dirname" code="MyApplet.class" width="60" height="80"> <jsp:param name="fontcolor" value="red" /> <jsp:param name="background" value="black" /> <jsp:fallback> Unable to initialize Java Plugin </jsp:fallback> </jsp:plugin>
あなたが興味を持っている場合は、JSPをテストするためにアプレットを使用しようとすることができます:pluginアクション要素は、<フォールバック>要素は、新しい要素である、エラーがユーザ・エラー・メッセージに送信されるコンポーネントの障害で発生します。
<jsp:element>の、の<jsp:属性>、の<jsp:body>要素のアクション
<jsp:element>の、の<jsp:属性>、の<jsp:body>要素のアクション、動的に定義されたXML要素。 動的XML要素が動的にコンパイル時ではなく、静的に生成されることを意味する、非常に重要です。
次の例は、動的XML要素を定義します。
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>本教程(w3big.com)</title> </head> <body> <jsp:element name="xmlElement"> <jsp:attribute name="xmlElementAttr"> 属性值 </jsp:attribute> <jsp:body> XML 元素的主体 </jsp:body> </jsp:element> </body> </html>
次のように次のページにアクセスするブラウザは、出力は次のようになります。
のは、<jsp:text>要素アクション
<jsp:テキスト>は、次のようにアクション要素は、テンプレートを使用すると、JSPページや文書内のテキストを書くことができ、構文は次のとおりです。
<jsp:text>模板数据</jsp:text>
上記のテキストテンプレートは、テキストのみとEL式含めることができ、他の要素を含めることはできません(注:EL式は、後続のセクションで説明します)。 >記号は違法であるため、XMLファイルで、あなたは、このような$ {任意> 0}として式を使用することはできませんのでご注意ください。 あなたは、CDATAセクションに$ {どんなGT 0}値式または埋め込みを使用することができます。
<jsp:text><![CDATA[<br>]]></jsp:text>
あなたはXHTMLでDOCTYPEを宣言する必要がある場合は、あなたがのは、<jsp:text>使用しなければならないアクションの要素を以下のように、例を示します。
<jsp:text><![CDATA[<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "DTD/xhtml1-strict.dtd">]]> </jsp:text> <head><title>jsp:text action</title></head> <body> <books><book><jsp:text> Welcome to JSP Programming </jsp:text></book></books> </body> </html>
あなたは上記の例を使用しようとすることができます。<jsp:テキスト>要素の違いではなく、アクションの結果を使用します。