public class DecimalTag
extends javax.servlet.jsp.tagext.TagSupport
decimalタグの実装クラス。
符号、および小数点付き数値をフォーマットして出力、
あるいはスクリプティング変数として定義する。
フォーマット対象となる数値データは、java.math.BigDecimal
型、あるいは java.lang.String 型をサポートする。
java.lang.String 型の場合、BigDecimal
のコンストラクタによって解釈可能な文字列となっている必要がある。
BigDecimal のコンストラクタで解釈不能であった場合は、
NumberFormatException がスローされる。
DecimalTag では、以下の属性をサポートする。
| 属性名 | デフォルト値 | 必須性 | 実行時式 | 概要 |
id |
なし | false |
false |
フォーマットされた文字列をレスポンスへ出力せずに、
スクリプティング変数にセットする際に指定する。
フォーマットされた文字列をスクリプティング変数にセットする場合には、
filter 属性の指定に関わらずHTML
特殊文字はエスケープされない。
|
filter |
true |
false |
true |
フォーマットされた文字列を出力する際に、HTML特殊文字を
エスケープするかどうかを指定する。ただし、id 属性が
指定されていた場合には、無視される。
|
ignore |
false |
false |
true |
name 属性で指定した beanが
見つからなかったときに無視するかどうかを指定する。false を
指定すると、beanが見つからなかったときに JspException
が投げられる。
|
name |
なし | false |
true |
フォーマット対象の文字列をプロパティに持つbeanの名前。
property 属性が指定されていなかったときには、
name 属性で指定されたインスタンス
がフォーマットの対象となる。この場合は、そのインスタンス自身が
java.math.BigDecimal 型であるか、あるいは
java.lang.String 型(かつ右側の空白除去後に
BigDecimal のコンストラクタによって解釈可能であるもの)
のどちらかである必要がある。value
属性が指定されていた場合には、無視される。
|
property |
なし | false |
true |
name 属性で指定された bean
においてアクセスされるプロパティの名前。value 属性が
指定されていた場合には無視される。
|
scope |
(findAttribute() メソッドの検索順序) |
false |
true |
name 属性で指定されたbean
を検索する際のスコープ。
|
value |
なし | false |
true |
フォーマットする文字列。文字列は、右側の空白除去後に
BigDecimal
のコンストラクタによって解釈可能である必要がある。value
属性を指定した場合には、name
属性、および property 属性は無視される。
|
pattern |
なし | true |
true |
フォーマットする出力形式。pattern
属性で指定した出力形式は、DecimalFormat
クラスのパターンとして解釈される。詳細は、DecimalFormat
クラスのドキュメントを参照のこと。
|
scale |
なし | false |
true |
丸め動作後の小数点以下桁数。n
を指定した場合には、小数第 n + 1 位が丸められる。
丸めモードはround属性で指定する。round
属性が指定されていない場合は、四捨五入が行われる。
|
round |
なし | false |
true |
丸めモード。scale属性が
指定されている時、有効になる。ROUND_HALF_UP(四捨五入)、
ROUND_FLOOR(切り捨て)、ROUND_CEILING
(切り上げ)が 設定可能である。デフォルトはROUND_HALF_UP
が実行される。これら3つの設定以外を指定した場合は、
IllegalArgumentExceptionがスローされる。
|
DecimalTag では以下の変数をサポートする。
| 変数名 | 型 | 有効範囲 | 記述 |
カスタムタグの id 属性で指定された名前 |
String |
開始タグ以降 | このカスタムタグで出力せず、スクリプティング変数へ 設定する場合の変数名。 |
| 修飾子とタイプ | フィールドと説明 |
|---|---|
protected boolean |
filter
HTML特殊文字を出力する際にフィルターするかどうか。
|
protected String |
id
そのページ内で利用できるようにするためのスクリプティング変数の名前。
|
protected boolean |
ignore
beanが見つからなかったときに、単に無視する(何も出力しない)かどうか。
|
protected String |
name
フォーマット対象のデータを含むbeanの名前。
|
protected String |
pattern
出力のフォーマットを指定するパターン。
|
protected String |
property
指定されたbeanにおいてアクセスされるプロパティの名前。
|
protected String |
round
丸めモード。
|
protected int |
scale
四捨五入後の小数点以下の桁数。
|
protected String |
scope
指定されたbeanを検索するスコープ。
|
protected String |
value
フォーマット対象の値(文字列)。
|
| コンストラクタと説明 |
|---|
DecimalTag() |
| 修飾子とタイプ | メソッドと説明 |
|---|---|
int |
doStartTag()
タグ評価開始時に呼ばれるメソッド。
|
boolean |
getFilter()
出力中のHTML特殊文字をフィルターするかどうかを取得する。
|
String |
getId()
スクリプティング変数の名前を取得する。
|
boolean |
getIgnore()
beanが見つからなかった場合に無視するかどうかを取得する。
|
String |
getName()
フォーマット対象のデータを含むbeanの名前を取得する。
|
String |
getPattern()
出力のフォーマットを指定するパターンを取得する。
|
String |
getProperty()
指定されたbeanにおいてアクセスされるプロパティの名前を取得する。
|
String |
getRound()
丸めモードを取得する。
|
int |
getScale()
四捨五入後の小数点以下の桁数を取得する。
|
String |
getScope()
指定されたbeanを検索するスコープを取得する。
|
String |
getValue()
フォーマット対象の値を取得する。
|
void |
release()
すべてのアロケートされた資源を解放する。
|
void |
setFilter(boolean filter)
出力中のHTML特殊文字をフィルターするかどうかを設定する。
|
void |
setId(String id)
スクリプティング変数の名前を設定する。
|
void |
setIgnore(boolean ignore)
beanが見つからなかった場合に無視するかどうかを設定する。
|
void |
setName(String name)
フォーマット対象のデータを含むbeanの名前を設定する。
|
void |
setPattern(String pattern)
出力のフォーマットを指定するパターンを設定する。
|
void |
setProperty(String property)
指定されたbeanにおいてアクセスされるプロパティの名前を設定する。
|
void |
setRound(String round)
丸めモードを設定する。
|
void |
setScale(int scale)
四捨五入後の小数点以下の桁数を設定する。
|
void |
setScope(String scope)
指定されたbeanを検索するスコープを設定する。
|
void |
setValue(String value)
フォーマット対象の値を設定する。
|
protected String id
protected boolean filter
true。protected boolean ignore
false
(例外を投げる)。protected String name
protected String property
protected String scope
protected String pattern
DecimalFormat と同じ書式で指定する。protected String value
protected int scale
n を指定した場合には、
小数第 n + 1 位が四捨五入される。protected String round
public String getId()
getId クラス内 javax.servlet.jsp.tagext.TagSupportpublic void setId(String id)
setId クラス内 javax.servlet.jsp.tagext.TagSupportid - スクリプティング変数の名前public boolean getFilter()
truepublic void setFilter(boolean filter)
filter - 出力中のHTML特殊文字をフィルターする場合は
truepublic boolean getIgnore()
truepublic void setIgnore(boolean ignore)
ignore - 無視する場合は truepublic String getName()
public void setName(String name)
name - beanの名前public String getProperty()
public void setProperty(String property)
property - 指定されたbeanにおいてアクセスされるプロパティの名前public String getScope()
public void setScope(String scope)
scope - 指定されたbeanを検索するスコープpublic String getPattern()
public void setPattern(String pattern)
pattern - パターンpublic String getValue()
public void setValue(String value)
value - フォーマット対象の値public int getScale()
public void setScale(int scale)
scale - 小数点以下の桁数public String getRound()
public void setRound(String round)
round - 丸めモードpublic int doStartTag()
throws javax.servlet.jsp.JspException
doStartTag インタフェース内 javax.servlet.jsp.tagext.TagdoStartTag クラス内 javax.servlet.jsp.tagext.TagSupportSKIP_BODYjavax.servlet.jsp.JspException - JSP例外public void release()
release インタフェース内 javax.servlet.jsp.tagext.Tagrelease クラス内 javax.servlet.jsp.tagext.TagSupportCopyright © 2014. All Rights Reserved.