MVC 아키텍처는 애플리케이션을 세 가지 주요 구성요소로 나누어 구조화합니다.
🐣Model
데이터와 비즈니스 로직을 나타냅니다. 데이터의 상태를 관리하고 비즈니스 로직을 수행합니다.
🐣View
사용자 인터페이스를 나타냅니다. 데이터의 시각적 표현을 담당하며, 사용자에게 정보를 표시하고 사용자 입력을 처리합니다.
🐣Controller
모데로가 뷰 간의 상호작용을 관리하고 조정합니다. 사용자의 입력을 받아 모델을 업데이트하고, 변경된 모델을 뷰에 반영합니다.
Spring MVC는 유연하고 확장 가능한 웹 애플리케이션을 구축하는데 도움이 되며, 애플리케이션의 각 부분을 독립적으로 테스트하고 유지 보수 할 수 있도록 지원합니다. 이러한 특성으로 인해 많은 개발자들이 Spring MVC를 웹 애플리케이션 개발에 활용하고 있습니다.
🐣REST는 리소스(Resource)를 URI(Uniform Resource Identifier)를 통해 표현하고, 해당 리소스에 대한 행위(조회, 생성, 수정, 삭제 등)를 HTTP메소드(GET, POST, PUT, DELETE 등)를 사용하여 수행합니다. RESTful API는 이러한 원칙에 따라 설계되어 클라이언트와 서버 간에 통신을 효율적으로 할 수 있도록 합니다.
🐣표현을 통한 데이터 전송(representation)
클라이언트와 서버 간에 데이터는 JSON, XML, HTML 등과 같은 표현 형식을 사용하여 전송됩니다.
🐣통일된 인터페이스 (Uniform Interface)
일관된 인터페이스를 통해 클라이언트와 서버 간의 상호작용을 단순화하고, 시스템의 아키텍처를 개선합니다.
기능 | 타입 | url |
---|---|---|
회원가입 | POST | {url}/users/sign-up |
로그인 | POST | {url}/users/sign-in |
회원정보 조회 | GET | {url}/users/my-info |
로그아웃 | POST | {url}/users/sign-up |
회원가입 | PUT | {url}/users/logout |
비밀번호 변경 | PATCH | {url}/users/password |
회원 탈퇴 | DELETE | {url}/users |