Struts 2 Mergeタグの例

Struts 2マージタグの例

ダウンロード–Struts2-Merge-Tag-Example.zip

Struts 2mergeタグは、いくつかのイテレーター(リストまたはマップによって作成された)を単一のイテレーターにマージするために使用されます。 このチュートリアルでは、Struts 2mergeタグを使用して次のタスクを実行します。

  1. 3つのArrayListを1つのイテレータにマージします。

  2. 3つのHashMapを1つのイテレータにマージします。

  3. ArrayListHashMapを単一のイテレータにマージします。

2つのイテレータがあり、それぞれに2つのエントリがあると仮定します。mergeタグを使用して1つのイテレータにマージすると、エントリの順序は次のようになります。

  1. 最初のイテレータの最初のエントリ。

  2. 2番目の反復子の最初のエントリ。

  3. 最初のイテレータの2番目のエントリ。

  4. 2番目の反復子の2番目のエントリ。

これはリストイテレータにのみ適用されます。反復子をマップすると、順序はランダムになります。

1. アクション

3つのArrayListプロパティと3つのHashMapプロパティを持つActionクラス。

MergeTagAction

package com.example.common.action;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import com.opensymphony.xwork2.ActionSupport;

public class MergeTagAction extends ActionSupport{

    private List list1 = new ArrayList();
    private List list2 = new ArrayList();
    private List list3 = new ArrayList();

    private Map map1 = new HashMap();
    private Map map2 = new HashMap();
    private Map map3 = new HashMap();

    public String execute() {

        list1.add("List1 - 1");
        list1.add("List1 - 2");
        list1.add("List1 - 3");

        list2.add("List2 - 1");
        list2.add("List2 - 2");
        list2.add("List2 - 3");

        list3.add("List3 - 1");
        list3.add("List3 - 2");
        list3.add("List3 - 3");

        map1.put("map1-key1", "map1-value1");
        map1.put("map1-key2", "map1-value2");
        map1.put("map1-key3", "map1-value3");

        map2.put("map2-key1", "map2-value1");
        map2.put("map2-key2", "map2-value2");
        map2.put("map2-key3", "map2-value3");

        map3.put("map3-key1", "map3-value1");
        map3.put("map3-key2", "map3-value2");
        map3.put("map3-key3", "map3-value3");

        return SUCCESS;
    }

    //getter methods...
}

2. 追加タグの例

mergeタグを使用して3 ArrayList / 3 HashMap / 1 ArrayList + 1 HashMapを1つのイテレーターに結合し、その値をループして出力することを示すJSPページ。

merge.jsp

<%@ taglib prefix="s" uri="/struts-tags" %>
 




Struts 2 Merge tag example

1. Merge 3 ArrayList into a single iterator.
2. Merge 3 HashMap into a single iterator.
3. Merge ArrayList and HashMap into a single iterator.

3. struts.xml

リンクしてください〜





    

    

        
            pages/merge.jsp
        

    

4. Demo

出力

Struts 2 Merge tag example

1. Merge 3 ArrayList into a single iterator.

  1. List1 - 1
  2. List2 - 1
  3. List3 - 1
  4. List1 - 2
  5. List2 - 2
  6. List3 - 2
  7. List1 - 3
  8. List2 - 3
  9. List3 - 3

2. Merge 3 HashMap into a single iterator.

  1. map1-key3=map1-value3
  2. map2-key2=map2-value2
  3. map3-key3=map3-value3
  4. map1-key1=map1-value1
  5. map2-key3=map2-value3
  6. map3-key1=map3-value1
  7. map1-key2=map1-value2
  8. map2-key1=map2-value1
  9. map3-key2=map3-value2

3. Merge ArrayList and HashMap into a single iterator.

  1. List1 - 1
  2. map1-key3=map1-value3
  3. List1 - 2
  4. map1-key1=map1-value1
  5. List1 - 3
  6. map1-key2=map1-value2