| ページ一覧 | ブログ | twitter |  書式 | 書式(表) |

MyMemoWiki

「Struts2 generator」の版間の差分

提供: MyMemoWiki
ナビゲーションに移動 検索に移動
(ページの作成:「==Struts2 generator タグ== {{include_html banner_html, "!Struts"}} 繰り返し処理可能な文字列ソースから、イテレータを生成する。 =====…」)
 
52行目: 52行目:
 
===例===
 
===例===
 
=====1 単純な例=====
 
=====1 単純な例=====
  <pre>
+
  &lt;pre&gt;
 
  Generate a simple iterator
 
  Generate a simple iterator
  <s:generator val="%{'aaa,bbb,ccc,ddd,eee'}">
+
  &lt;s:generator val="%{'aaa,bbb,ccc,ddd,eee'}"&gt;
   <s:iterator>
+
   &lt;s:iterator&gt;
       <s:property /><br/>
+
       &lt;s:property /&gt;&lt;br/&gt;
   </s:iterator>
+
   &lt;/s:iterator&gt;
  </s:generator>
+
  &lt;/s:generator&gt;
  </pre>
+
  &lt;/pre&gt;
 
  This generates an iterator and print it out using the iterator tag.
 
  This generates an iterator and print it out using the iterator tag.
  
 
=====2 count属性を使用した例=====
 
=====2 count属性を使用した例=====
  <pre>
+
  &lt;pre&gt;
 
  Generate an iterator with count attribute
 
  Generate an iterator with count attribute
  <s:generator val="%{'aaa,bbb,ccc,ddd,eee'}" count="3">
+
  &lt;s:generator val="%{'aaa,bbb,ccc,ddd,eee'}" count="3"&gt;
   <s:iterator>
+
   &lt;s:iterator&gt;
       <s:property /><br/>
+
       &lt;s:property /&gt;&lt;br/&gt;
   </s:iterator>
+
   &lt;/s:iterator&gt;
  </s:generator>
+
  &lt;/s:generator&gt;
  </pre>
+
  &lt;/pre&gt;
 
  This generates an iterator, but only 3 entries will be available in the iterator
 
  This generates an iterator, but only 3 entries will be available in the iterator
 
  generated, namely aaa, bbb and ccc respectively because count attribute is set to 3
 
  generated, namely aaa, bbb and ccc respectively because count attribute is set to 3
  
 
=====3 id 属性を使用した例=====
 
=====3 id 属性を使用した例=====
  <pre>
+
  &lt;pre&gt;
 
  Generate an iterator with id attribute
 
  Generate an iterator with id attribute
  <s:generator val="%{'aaa,bbb,ccc,ddd,eee'}" count="4" separator="," id="myAtt" />
+
  &lt;s:generator val="%{'aaa,bbb,ccc,ddd,eee'}" count="4" separator="," id="myAtt" /&gt;
  <%
+
  &lt;%
 
   Iterator i = (Iterator) pageContext.getAttribute("myAtt");
 
   Iterator i = (Iterator) pageContext.getAttribute("myAtt");
 
   while(i.hasNext()) {
 
   while(i.hasNext()) {
       String s = (String) i.next(); %>
+
       String s = (String) i.next(); %&gt;
       <%=s%> <br/>
+
       &lt;%=s%&gt; &lt;br/&gt;
  <%    }
+
  &lt;%    }
  %>
+
  %&gt;
  </pre>
+
  &lt;/pre&gt;
 
  This generates an iterator and put it in the PageContext under the key as specified
 
  This generates an iterator and put it in the PageContext under the key as specified
 
  by the id attribute.
 
  by the id attribute.
  
 
=====4 comparator 属性を使用した例=====
 
=====4 comparator 属性を使用した例=====
  <pre>
+
  &lt;pre&gt;
 
  Generate an iterator with comparator attribute
 
  Generate an iterator with comparator attribute
  <s:generator val="%{'aaa,bbb,ccc,ddd,eee'}" converter="%{myConverter}">
+
  &lt;s:generator val="%{'aaa,bbb,ccc,ddd,eee'}" converter="%{myConverter}"&gt;
   <s:iterator>
+
   &lt;s:iterator&gt;
       <s:property /><br/>
+
       &lt;s:property /&gt;&lt;br/&gt;
   </s:iterator>
+
   &lt;/s:iterator&gt;
  </s:generator>
+
  &lt;/s:generator&gt;
 
   
 
   
 
   
 
   
114行目: 114行目:
 
   
 
   
 
  }
 
  }
  </pre>
+
  &lt;/pre&gt;
 
  This will generate an iterator with each entries decided by the converter supplied. With
 
  This will generate an iterator with each entries decided by the converter supplied. With
 
  this converter, it simply add "converter-" to each entries.
 
  this converter, it simply add "converter-" to each entries.
 
----
 
----
 
{{include_html banner_html, "!Struts"}}
 
{{include_html banner_html, "!Struts"}}

2020年2月15日 (土) 08:06時点における版

Struts2 generator タグ

テンプレート:Include html banner html, "!Struts"

繰り返し処理可能な文字列ソースから、イテレータを生成する。

パラメータ
タグ名 必須 デフォルト 評価 内容
count false true イテレータに含まれる最大要素数
separator true true valで両されているセパレータ
val true true 解析されるソース
converter false true 文字列valに含まれる要素を、解析し、オブジェクトに変換するコンバータ
id false true page contextに格納する結果イテレータのID。

1 単純な例
<pre>
Generate a simple iterator
<s:generator val="%{'aaa,bbb,ccc,ddd,eee'}">
 <s:iterator>
     <s:property /><br/>
 </s:iterator>
</s:generator>
</pre>
This generates an iterator and print it out using the iterator tag.
2 count属性を使用した例
<pre>
Generate an iterator with count attribute
<s:generator val="%{'aaa,bbb,ccc,ddd,eee'}" count="3">
 <s:iterator>
     <s:property /><br/>
 </s:iterator>
</s:generator>
</pre>
This generates an iterator, but only 3 entries will be available in the iterator
generated, namely aaa, bbb and ccc respectively because count attribute is set to 3
3 id 属性を使用した例
<pre>
Generate an iterator with id attribute
<s:generator val="%{'aaa,bbb,ccc,ddd,eee'}" count="4" separator="," id="myAtt" />
<%
 Iterator i = (Iterator) pageContext.getAttribute("myAtt");
 while(i.hasNext()) {
     String s = (String) i.next(); %>
     <%=s%> <br/>
<%    }
%>
</pre>
This generates an iterator and put it in the PageContext under the key as specified
by the id attribute.
4 comparator 属性を使用した例
<pre>
Generate an iterator with comparator attribute
<s:generator val="%{'aaa,bbb,ccc,ddd,eee'}" converter="%{myConverter}">
 <s:iterator>
     <s:property /><br/>
 </s:iterator>
</s:generator>


public class GeneratorTagAction extends ActionSupport {

  ....

  public Converter getMyConverter() {
     return new Converter() {
         public Object convert(String value) throws Exception {
             return "converter-"+value;
         }
     };
  }

  ...

}
</pre>
This will generate an iterator with each entries decided by the converter supplied. With
this converter, it simply add "converter-" to each entries.

テンプレート:Include html banner html, "!Struts"