2014-09-28 7 views
-1

는 내가 좋아하는 과일을 선택 checkboxlist을 다음 한 index.jsp를 홈 페이지가 있습니다. :Struts2 형식 변환 Checkboxlist

public class Action1 extends ActionSupport 
{ 
    String myFruits; 
    public String getMyFruits() { 
     return myFruits; 
    } 

    public void setMyFruits(String myFruits) { 
     this.myFruits = myFruits; 
    } 

public String execute() 
    { 

     return "success"; 
    } 

} 

그리고 선택된 값을 읽어 results.jsp : 출력이 제대로 제공

my favorite fruit is:<br> 
    <s:property value="myFruits"/> 

.

my favorite fruit is: 
apple, mango 

는하지만 난 예를 들어, 사과, 망고 위해 선택한 여러 값이 문자열 myFruit 유형 valuestack에 저장하기 방법을 이해할 수 없습니다입니다. 이 문자가 List이나 배열이 아니어야합니까?

위의 코드가 여러 String 이름을 포함하는 String 유형으로 잘 작동하는 이유는 무엇입니까?

+0

문자열 인 경우 다중 값을 포함하지 않습니다. 값이 쉼표로 구분되는 하나의 문자열입니다. –

답변

0

는하지만 여러 값이 예를 apple 선택하고 mango이 문자열 myFruit 유형 valuestack에 저장하기 방법을 이해할 수 없습니다입니다. 이 문자가 List이나 배열이 아니어야합니까?

이름이 myFruits이고 이름이 동일한 문자열 속성이 있습니다. Struts는 해당 속성을 채우기 위해 최선을 다하고 있으며 매개 변수에 여러 값이 있지만 속성이 단일 문자열 유형 인 경우 값을 쉼표로 구분하여 문자열로 변환 할 수 있습니다.

반면에 배열 또는 목록 속성 유형이있는 경우 값은 배열 또는 목록으로 설정됩니다.

+0

유형은 속성에 적합한 설정자를 찾을 수있는 경우 기본 유형 변환기에 의해 결정됩니다. –