「Struts2 generator」の版間の差分
ナビゲーションに移動
検索に移動
(ページの作成:「==Struts2 generator タグ== {{include_html banner_html, "!Struts"}} 繰り返し処理可能な文字列ソースから、イテレータを生成する。 =====…」) |
|||
| (同じ利用者による、間の1版が非表示) | |||
| 1行目: | 1行目: | ||
| − | ==Struts2 generator タグ== | + | ==[[Struts2 generator]] タグ== |
| − | {{include_html banner_html, "!Struts"}} | + | {{include_html [[banner_html]], "!Struts"}} |
繰り返し処理可能な文字列ソースから、イテレータを生成する。 | 繰り返し処理可能な文字列ソースから、イテレータを生成する。 | ||
| 52行目: | 52行目: | ||
===例=== | ===例=== | ||
=====1 単純な例===== | =====1 単純な例===== | ||
| − | + | <pre> | |
Generate a simple iterator | 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. | This generates an iterator and print it out using the iterator tag. | ||
=====2 count属性を使用した例===== | =====2 count属性を使用した例===== | ||
| − | + | <pre> | |
Generate an iterator with count attribute | 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 | 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> | |
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" /> | |
| − | + | <% | |
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(); %> |
| − | + | <%=s%> <br/> | |
| − | + | <% } | |
| − | % | + | %> |
| − | + | </pre> | |
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> | |
Generate an iterator with comparator attribute | 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> | |
| 114行目: | 114行目: | ||
} | } | ||
| − | + | </pre> | |
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月16日 (日) 04:32時点における最新版
目次
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"}}
© 2006 矢木浩人