Spring MVC 애노테이션

라이라·2023년 6월 13일
0

@Controller (Class)
:: 스프링 MVC의 컨트롤러 객체임을 명시하는 애노테이션

@RequestMapping (Class, Method)
:: 특정 URI에 매치되는 클래스나 메서드임을 명시

@RequestParam (Param)
:: req에서 특정한 파라미터의 값을 찾아낼 때 사용

@RequestHeader (Param)
:: req에서 특정 HTTP 헤더 정보를 추출할 때 사용

@PathVariable (Param)
:: 현재의 URI에서 원하는 정보를 추출

@CookieValue (Param)
:: 현재 사용자의 쿠키가 존재하는 경우 쿠키의 이름을 이용해 값을 추출

@ModelAttribute (Method, Param)
:: 자동으로 해당 객체를 뷰까지 전달하도록 만든다.

@SessionAttribute (Class)
:: 세션상에서 모델의 정보를 유지하고 싶은 경우에 사용

@InitBinder (Method)
:: 파라미터를 수집해서 객체로 만들 경우에 커스터마이징

@ResponseBody (Method, returnType)
:: 리턴 타입이 TTP의 응답 메시지로 전송

@RequestBody (Param)
:: req 문자열이 그대로 파라미터로 전달

@Repository (Class)
:: Dao 객체

@Service (Class)
:: service 객체

@RequestBody

:: 만들어진 결과 데이터를 전달해야하는 경우 사용하는데 JSON/XML과 같은 데이터를 View에 전달하기 위해서 사용하는데 JSON형태로 반환한다. (일반 객체)

	@Controller
    public class SampleJsonController{
    	@RequsetMapping("/list")
        public @RequestBody ProductVo doJson(){
        	ProductVo product = new ProductVo("샘플", 3000);
            return product;   
         }
     }
     
     
     >> localhost:8080/doJson
     	{"name":"샘플", "price": 3000.0}

	:: 실행 결과, 응답된 데이터는 'application/json'타입으로 출력된다.
profile
혼자 보려고 올리는 용도

0개의 댓글