찌니의 프로그래밍 삼매경

[Spring] 스프링 컨트롤러 정리 본문

Spring

[Spring] 스프링 컨트롤러 정리

zzI니☆ 2021. 2. 5. 11:06
728x90

 

 

 


@RequestMapping

=> value에는 url, method는 get, post 같은 HTTP 프로토콜 방식을 써주면 된다.

즉 클라이언트가 URL로 서버에 요청을 하면 해당 URL을 맵핑하고 있는 메소드가 해당 요청을 처리하고 응답해준다고 보면 된다.

 

@ResponseBody

=> HTTP 의 body를 읽는데 필요하다. ajax로 통신할 때 json 메세지를 읽는데 필요하여 사용했으며, ajax에게 map형태로 간단한 성공 여부를 알려주기위해 return type을 Map 타입으로 하였다.

 

@RequestParam

=> 타임리프의 input의 name이나 Get방식 url의 키값같은, 즉 클라이언트로부터 요청받은 키의 이름과 매핑하여 컨트롤러에서 사용할 수 있다.

 

@ModelAttribute

=> 위와 반대로 하나의 키값에 해당하는 값을 받는게 아니라 모델로서도 받을 수 있다. 예를들어 타임리프 form에서 <form>의 name에 매칭하여 객체의 값을 한번에 담아올 수 있다. (이 때 form 태그 안의 input태그들의 name이 객체의 변수명들과 맞아 떨어져야한다.)

 

ModelAndView

=> ModelAndView는 응답으로 반환하는 클래스인데 이름 그대로 모델과 뷰 정보를 모아서 관리하는 클래스라고 이해하면 쉽다. MVC의 Model과 View로 데이터를 관리하는 모델과 화면 출력과 관련된 뷰를 한번에 처리한다.

 

HTTPServletRequest

=> 세션을 얻는데 사용하였다.

 

@PathVariable

=> 말 그대로 경로 변수를 넣는데 사용한다. 

@RequestMapping("/page/{num}")
public String page(@PathVariable String num){
	
}

 

 


[참고]

@RequestBody  

 - HTTP 요청 몸체를 자바 객체로 전달받음

 - HTTP 요청의 body 내용을 자바 객체로 매핑하는 역할

 

@ResponseBody 

 - 자바 객체를 HTTP 응답 몸체로 전송함

 - 자바 객체를 HTTP 요청의 body 내용으로 매핑하는 역할

출처: https://lee-mandu.tistory.com/242?category=633568 [개발/일상_Mr.lee]

 

스프링 @RequestBody, @ResponseBody

프로젝트를 진행하며 json 형태의 데이터를 주고받을 경우가 생겼다. 요즘 xml이나 json 등의 형식으로 주고받은 경우가 빈번하게 발생하고 있는 추세이다. 스프링 MVC 이에 따라 스프링 MVC도 클라

lee-mandu.tistory.com


 

728x90
Comments