Dev/Spring Framework

스프링(Spring) MVC의 컨트롤러

Fehoon- 2018. 2. 6. 15:05

 

스프링 MVC의 컨트롤러가 무엇을 처리해 주는가?

 

* 참고서적 : 코드로 배우는 스프링 웹프로젝트

파라미터 수집  웹에서 가장 많이하는 작업은 사용자의 요청에 필요한 데이터를 추출하고 이를 VO(Value Object) 혹은 DTO(Data Transfer Object)로 변환하는 파라미터의 수집 작업입니다. 스프링 MVC의 컨트롤러는 이러한 처리를 자동으로 해주기 때문에 개발 시간을 크게 단축할 수 있습니다.

 

 

애노테이션을 통한 간편 설정 스프링 MVC의 설정은 크게 XML과 애노테이션을 사용할 수 있지만, 애노테이션을 주로 사용합니다. 애노테이션을 사용하면 개발자는 클래스나 메소드 선언에 필요한 애노테이션을 추가하는 작업을 통해서 요청이나 응답에 필요한 모든 처리를 완료할 수 있습니다.

 

 

로직의 집중 기존의 모델 2는 특정한 URI마다 컨트롤러를 개발하는 경우가 많았지만 스프링 MVC 컨트롤러의 경우 각 메소드마다 필요한 애노테이션을 설정할 수 있기 때문에 여러 메소드를 하나의 컨트롤러에 집중해서 작성할 수 있습니다.

 

 

테스트의 편리함 스프링은 테스트 모듈을 사용해서 스프링 MVC로 작성된 코드를 WAS의 실행없이도 테스트할 수 있는 편리한 방법을 제공한다.

 

 

스프링 MVC 컨트롤러는 상속이나 인터페이스를 구현하지 않아도 됩니다. 기존의 프레임워크들과는 달리 스프링 MVC에서는 컨트롤러 작성시 아무런 제약이없습니다. 대신 @Controller 라는 애노테이션에 대한 추가 작업이 필요합니다.

 

 

메소드의 파라미터와 리턴타입에 대한 제약이없습니다 클래스가 특정 부모 클래스나 인터페이스가 없으니 메소드에 대한 제약도 없습니다. 따라서 훨씬 자유로운 코드를 작성가능합니다.

 

 

스프링 MVC가 제공하는 유용한 클래스들이 존재합니다. 스프링 MVC의 경우 다양한 클래스를 이용해서 필요한 작업을 수월하게 진행할 수 있습니다. 예를들어 파일 업로드처리나 유효성 검사 등을 제공합니다.

 

 

반응형