Spring

Controller @RequestParam

닉넥임 2013. 10. 7. 13:01
반응형

- @RequestParam 은 단일 HTTP 요청 파라메터를 메소드 파라미터에 넣어주는 애노테이션이다.

- 아래에 예제에는 2가지 만을 적었다 

- 첫번째는 @RequestParam("id") String id 와같이 id요청 파라미터를 String타입으로 변환해서 메소드의 id의 파라미터에 넣어준다. 이때 @RequestParam 을 생략하고도 사용이 가능하다.

- 두번째는 Map<key, value>을 이용하여 값을 담아온다. 파라미터의 이름은 맵의 키에 파라미터의 값은 맵의 값에 담겨 전달된다.


ps. DTO처럼 오브젝트 타입이 필요할경우에도 일반적으로 처리가 가능하지만여 @RequestParam을 여러번 적어야 하는 경우가 발생한다 그렇기에  @ModelAttiribute를 사용하여 길이를 줄이수도 있다.!




1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
package com.daegu.param;
 
import java.util.Map;
 
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
 
@Controller
public class ParamController {
 
    @RequestMapping(value = "/main")
    public String main(){
        return "main";
    }
    
    // method1 @RequstParma으로 값받기
/*    @RequestMapping(value = "/result")  
 // @RequestParam 생략해서도 사용가능.
    public void result(@RequestParam("id") String id, @RequestParam("pwd") String pwd){
 
    System.out.println("결과값출력1 : " + id);
    System.out.println("결과값출력2 : " + pwd);
    }
*/    
 
    // method2 Map을 이용하여 값받기
    @RequestMapping(value = "/result")
    public String result(@RequestParam Map<StringString> params){
        System.out.println(params.get("결과값출력1 : " +"id"));
        System.out.println(params.get("결과값출력2 : " + "pwd"));
        return "main";
    }
}
 


반응형

'Spring' 카테고리의 다른 글

Spring Form Tag  (0) 2013.10.07
Controller @ModelAttribute  (0) 2013.10.07
String Mybatis 연동 및 간단예제(select, insert)  (8) 2013.10.01
web.xml  (0) 2013.09.25
Maven 정보(pom.xml) 모음  (0) 2013.09.05