2012-01-13 4 views
1

나는 이것을 어딘가에서 읽었지만 여전히 확실하지 않다는 것을 기억한다.Struts 2가 요청 매개 변수를 처리하는 방법

아래 시나리오를 고려하십시오 다음 웹 페이지를 통해

<action name="doSomething" class="com.domain.MyAction" method="myMethod">    
    </action> 

public class MyAction extends ActionSupport{ 

     public String myMethod(){ 
     private String param; 

     } 
     //getter 
     //setter 
    } 

을 내가 할 POST o GET: domain/doSomething?param=hello

나는, 아래의 방법을 사용하여 "PARAM"값을 복구 할 수 있습니다

는에게 동일 ?

this.getParam(); 
(String)request.getParameter("param"); 
(String)request.getSession.getAttribute("param"); 

그렇다면 struts는 항상 요청 매개 변수를 http_session에 넣을까요?

+0

아니요, S2는 사용자가 말하지 않는 한 세션에 아무 것도 넣지 않습니다. –

+0

변수와 그것의 getter/setter 메쏘드는'myMethod()'메쏘드 밖에서 선언되어야합니다 – anu

답변

2

Struts는 요청 매개 변수의 getter 및 setter를 사용하여 조치에 전달합니다.

public class MyAction extends ActionSupport{ 

    private String param; 
    public void setParam(String p){ param=p; } 
    public String getParam() { return param; } 

    public String myMethod(){ 
     System.out.println("Got the request parameter automatically just by having a getter and setter for that parameter " + param); 
    } 
} 
관련 문제