본문 바로가기
Framework/Spring

[SPRING 시작-7] #스프링에서 파라미터 전송하는 방법 / PathVariable / getParameter / @RequestMapping 등

by 나비와꽃기린 2016. 10. 17.
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

스프링에서 간단하게 파라미터를 전송하는 방법을 알아보자.

 

1. PathVariable(URL param) :  URL를 통해서 데이터를 전송하는 방식. url에 직접적으로 딸려 전송되므로 추천하진 않는다.

http://localhost:8091/spring/login/thisisparamter 을 호출하면

/login뒤로 매칭되는 {}값에 의해 parameter를 전달 할 수 있다.


2. HttpServletRequest : HttpServletRequest request 객체를 이용하여 파라미터를 받는다.

request 객체의 getParameter 를 이용하여 갖고오고자 하는 파라미터의 id(key)을 셋팅해줘야 한다.

<form action="/spring/loginCheck" id="loginCheck">
	<input type="text" id="id" name="id" value="admin">
	<input type="text" id="pwd" name="pwd" value="welcome1">
	<input type="submit" value="submit">
</form>
@RequestMapping(value = "/loginCheck", method = RequestMethod.GET)
	public String loginCheck(HttpServletRequest request, HttpServletResponse response) {
		
		 logger.debug("id값 ::: " +request.getParameter("id"));
		 logger.debug("id값 ::: " +request.getParameter("pwd"));



3. @RequestMapping: 어노테이션(@)를 이용하여 파라미터를 받는다.

위와 어떻게 보면 비슷하지만 이 방법은 @를 사용하여 key값을 매칭해 준 후, String int등의 타입을 지정하여 사용한다.

@RequestMapping(value = "/loginCheck", method = RequestMethod.GET)
public String loginCheck(@RequestParam("id") String id,@RequestParam("pwd") String pwd) {

	  logger.debug("id값 ::: " +id  );
	  logger.debug("id값 ::: " +pwd );

결과는 2.번의 사진과 동일하다.


 

이 외에 Command object 를 사용하여 가져오는 방법이 있지만,

일단 여기까지만. 추후 포스팅 하기로 하자~~~