PORT4 > Pasta
 

Pull

概要

Pullは反復子として動作します。 ResultSetなどの反復型のデータソースの接続のほか、 単純に1つの値を返すためにも利用できます。

作成方法

Pull インターフェイスを実装したクラスを作成します。 あるいは、 AbstractPull を継承します。

1つの値しか返さないのであれば、 AbstractSingleValuePull を継承するのが簡単です。 また、複数の値を返す場合には AbstractMultiValuePull を継承するのが簡単な場合があります。

リファレンス

now

引数なし
ISO8601形式で現在の時刻を返します。
format
java.text.SimpleDateFormatの形式で現在の時刻を返します。

paginate

大量のデータを複数のページに分割する表示方法を実現します。 結果としてoffset(開始位置)とpage(ページ番号)という二つの値を持つマップがリンクの数だけ返されます。

以下のテンプレートを用いることで検索サイトなので使われるページ分割を実現できます。 offset、pageSize、pageLinks、countにはあらかじめ、 データ取り出し開始位置、1ページに表示する最大データ数、1ページに表示する各ページへのリンクの最大数、 データの総数が設定されているものとします。

<cls-logic>
.ページ {
  =paginate/pages: "${offset}" "${pageSize}" "${pageLinks}" "${count}";
  present: pages;
}

.ページ .選択 {
  iterate: pages i;
}

.ページ .移動 {
  not-equal: "${i:offset}" "${offset}";
}

.ページ .現在 {
  equal: "${i:offset}" "${offset}";
}
</cls-logic>
<div cls:class="ページ">
  ページ:
  <span cls:class="選択">
    <a cls:class="移動" href="page.html?offset=${i:offset}">${i:page}</a>
    <span cls:class="現在">${i:page}</span>
  </span>
</div>

environment

name
CGI同様の環境変数を返します。 詳細は WebContext のgetEnvironmentを参照してください。