티스토리 뷰
책 내용을 어느정도 따라한 후, 앱을 실행시키니, 이렇게 뜬다....


BeanCreationException 예외가 뜬 것이다...😱
그래서, 처음에는 내가 Bean을 만들기 위한 어노테이션들을 빼먹은 건가? 오타가 났나? 라고 생각했다.
하지만, Ambiguous mapping 이 문제였다..
즉,
Ambiguous mapping : 같은 주소(경로)로 연결된 메서드가 둘 이상 있어서, 스프링이 누굴 써야 할지 모르겠을때의 문제!!!

▶ 스프링 부트는
요청 경로(주소) + 요청 방식(GET, POST, PUT, DELETE) 이 같으면, 같은 메서드로 인식
한다.
그럼? 중복되지 않도록 수정하면 될 것이다 ㅋㅋㅋ.
수정 ↓ )
@RequestMapping(value = "/products", method = RequestMethod.GET)
public List<ProductDTO> findProducts(@RequestParam(required = false) String name) {
if (name == null || name.isBlank()) {
// name이 없으면 전체 상품 조회
return simpleProductService.findAll();
} else {
// name이 있으면 이름 포함 검색
return simpleProductService.findByNameContaining(name);
}
}
// +) isBlank() : 안에 글자가 있는지 없는지 검사,
// "", " " 이면 true 반환함
하나의 메서드로 합쳤다.
-----------------------------------------------
요즘 뭔가 생각이 많다..............
이 고민에 대해서 글을 써볼까하는 생각도 들지만 잘 모르겠다...
'백엔드' 카테고리의 다른 글
| 백엔드 개념 - 도메인, 도메인 객체, 엔티티(Entity), 값 객체(Value Object) 개념 정리 (0) | 2025.10.28 |
|---|---|
| web - CRUD, REST, REST API, RESTful 의미 정리 (0) | 2025.10.14 |
| web - URL, URI 개념 및 차이 (0) | 2025.10.14 |
| 스프링 부트 - @RequestParam, @PathVariable 차이 정리 (0) | 2025.10.14 |
| Spring Boot - @RequestBody, @ResponseBody 정리 (0) | 2025.10.13 |