1. 프로젝트 환경설정

2. 요구사항 분석

3. 도메인, 엔티티, 테이블 설계

4. 아키텍처 구성

5. 핵심 비즈니스 로직 개발 - 회원, 상품, 주문 도메인 개발->핵심 비즈니스 로직 개발->테스트케이스 검증->DDD 이해

6. 테스트

7. 웹 계층 개발

요청 파라미터 설정 방법

PathVariable

의미 : uri 경로에 포함된 값을 변수로 맵핑
사용처 : RESTful 스타일 API에서 특정 리소스를 식별할 때

@GetMapping("/users/{id}")
public String getUser(@PathVariable("id") Long id){
    return "User id: " + id;
}

특징 :

  • URL 경로의 일부(.../users/10)를 그대로 변수 id=10에 바인딩
  • 주로 리소스 식별자(ID 등) 전달

RequestParam

의미: URL 쿼리 파라미터나 form-data의 key-value를 매핑
사용처: 검색 조건, 페이징 옵션 등 선택적 파라미터 전달할 때

@GetMapping("/users)
public String searchUser(@RequestParam String name,
                        @RequestParam(defaultValue="1") int page) {
    return "Name: " + name + ", Page: " + page;                        
}

특징 :

  • key=value 형태의 데이터와 매핑
  • defaultValue 지정 가능
  • 선택적으로 사용할 수 있으며, 주로 옵션성 데이터 전달

RequestBody
의미 : HTTP 요청의 Body(JSON, XML 등)를 객체로 역직렬화
사용처 : POST/PUT/PATCH 요청 시 대량의 구조화된 데이터(DTO, JSON 등) 전달할 때

@PostMapping("/users")
public String createUser(@RequestBody UserDto user){
    return "Created user: " + user.getName();
}

특징 :

  • 주로 application/json과 함께 사용
  • Jackson 같은 메시지 컨버터가 JSON -> 객체 변환 수행
  • 대규모 데이터 교환, 복잡한 구조 데이터를 처리할 때 적합

'#DEV > spring' 카테고리의 다른 글

Thymeleaf  (0) 2025.10.08
프랙티스 가이드  (0) 2025.10.08
[환경설정] 웹 애플리케이션 프로젝트의 기본 의존성  (0) 2025.10.03
spring 개발 작업  (0) 2025.09.29
스프링 프레임워크 들어가기 전에...  (0) 2020.03.21

+ Recent posts