2013-10-11 2 views
0

jsp에서 여러 데이터를 보내고 싶습니다. ArrayList에서 가져오고 싶습니다. 하지만 전체 값을 하나의 요소로 표시하고 있습니다. JSP로jsp에서 ArrayList로 여러 값을 가져 오는 방법

에서

<span class="label"> Item Name</span> 
<span class="ib"> <input type="text" name="item" id="item"/></span> 

나는 쉼표

로 구분하여 입력으로 여러 값을주고있다
funny,action,cartoon 
내가 ArrayList를

public class Test extends ActionSupport{ 

    private ArrayList item; 
    //getter and setter of item 

에 가져하고자하는 작업에

이 작업을 수행하는 방법 .

+0

왜 행동으로 문자열을 가져 오지 않고'split (",")'를 사용하여 문자열을 분할하고'Arrays.asList()'메서드를 사용합니까? –

+0

별도의 입력 요소를 사용하지 않는 이유는 무엇입니까? –

답변

1

String value = "funny,action,cartoon"; 
String[] split = value.split(","); 
List<String> sampleList = Arrays.asList(split); 
0

배열을 반복하려면 jsp에서 <c:forEach>을 사용해야합니다.

1

귀하의 Action 클래스는 String로 항목을 허용하지만 ArrayList

public class Test extends ActionSupport { 

    private List<String> items; 

    // getter/setter for items 

    public void setItem(String item) { 
    String[] items = item.split(","); 
    this.items = new ArrayList<String>(Arrays.asList(items)); 
    } 

} 

등의 공지 사항, 이름의 차이를 채울 필요가 다음 코드를 적용하십시오 : itemString 인에게 itemsList입니다.

+0

이것은 또한 좋은 대답입니다 – xrcwrn

+0

@Manish'Arrays.asList()'를 직접 사용하면'List'가 불변이됩니다. 즉, 더 이상 목록을 추가하거나 수정할 수 없습니다. 따라서 나는 대신 * 복사 생성자 *를 사용했습니다. –

관련 문제