JSPで利用可能な標準的なEL関数Java Standard EL Functions 1.0.0をリリースしました。
ダウンロードはこちらからどうぞ。ダウンロードしたJARファイルをWEB-INF/libにコピーすると以下のようにEL関数が使えるようになります。
<%@ taglib uri="http://amateras.sf.jp/functions" prefix="f" %> ... ${f:h(bean.property)}
利用可能な関数は以下の通りです。
関数名 | 説明 |
---|---|
f:h(String value) | HTMLタグをエスケープします。 |
f:u(String value) | 文字列をURLエンコードします。 |
f:br(String value) | 改行を<br>タグに変換します。 |
f:nbsp(String value) | 半角スペースを に変換します。 |
f:cut(String value, int length) | 文字列の先頭から指定文字数分を切り出します。 |
f:link(String value) | 文字列中のURLをリンクに変換します。 |
f:mask(String value) | 文字列を同じ文字数のアスタリスクに変換します。 |
f:date(Date date) | Dateオブジェクトを日付のパターンでフォーマットします。 |
f:datetime(Date date) | Dateオブジェクトを日時のパターンでフォーマットします。 |
f:time(Date date) | Dateオブジェクトを時間のパターンでフォーマットします。 |
f:number(Object number, String pattern) | 数値を指定したパターンでフォーマットします。 |
f:date()、f:datetime()、f:time()などの関数はデフォルトのフォーマットパターンが決められています。 これらのフォーマットパターンを変更するにはクラスパスルートにfunctions.propertiesというプロパティファイルを 以下のような内容で作成してください(デフォルトのfunctions.propertiesはfunctions-x.x.x.jarに含まれています)。
# f:u()でURLエンコードするときの文字コード defaultEncoding=UTF-8 # f:date()でフォーマットするパターン datePattern=yyyy/MM/dd # f:datetime()でフォーマットするパターン datetimePattern=yyyy/MM/dd HH:mm:ss # f:time()でフォーマットするパターン timePattern=HH:mm:ss
利用可能な関数は今後も少しずつ追加していく予定です。