Spring Boot/Spring Mvc(6)
-
상품 검증 처리
컨트롤러의 중요한 역할중 하나는 HTTP 요청이 정상인지 검증하는 것입니다. 그리고 정상 로직보다 이런 검증 로직을 개발하는 것이 더 어려울 수 있습니다. 참고: 클라이언트 검증, 서버 검증-클라이언트 검증은 조작할 수 있으므로 보안에 취약하다.-서버만으로 검증하면, 즉각적인 고객 사용성이 부족해진다.-둘을 적절히 섞어서 사용하되, 최종적으로 서버 검증은 필수-API 방식을 사용하면 API 스펙을 잘 정의해서 검증 오류를 API 응답 결과에 잘 남겨주어야 함1.GetMapping을 통해 상품 등록 화면으로 이동합니다.2.상품 스펙을 입력 후 저장하고 Post방식으로 넘어옵니다.3.상품 스펙에 이상이 없다면 저장합니다. 1.GetMapping을 통해 상품 등록 화면으로 이동합니다.2.상품 스펙을 입력 ..
2025.02.14 -
@Controller와 @RequestMapping 관계
@ControllerSpring MVC의 핵심 구성 요소 중 하나로 정의됩니다. 컨트롤러는 클라이언트(웹 브라우저, 모바일 앱 등)에서 들어오는 요청을 처리하고 적절한 서비스 로직을 실행한 후 결과를 반환하는 역할을 하고 있습니다. Spring에서 컨틀로러 정의 방법-Spring에서는 보통 컨트롤러를 @Controller 어노테이션을 이용해서 정의하고 있습니다. @Controllerpublic class Controllerr {}아직 로직을 설정하진 않았지만 이러한 방식으로 컨트롤러를 정의해주고 있습니다. 그럼 이러한 부분을 어떻게 적용할 수 있을까요? -일반적으로는 웹/애플리케이션을 개발하는 과정에서 사용하고 있습니다. -뷰(View)를 반환하는 역할로 사용하고 있습니다. @Controllerpu..
2025.02.13 -
Spring MVC 패턴을 이용한 웹 사이트 만들기
요구 사항 분석 상품 도메인 모델- 상품 ID- 상품명- 가격- 수량 상품 관리 기능- 상품 목록- 상품 상세- 상품 등록- 상품 수정 Item 객체 생성import lombok.Getter;import lombok.Setter;@Getter@Setterpublic class Item { private Long id; private String itemName; private Integer price; private Integer quantity; public Item() { } public Item(String itemName, Integer price, Integer quantity) { this.itemName = itemName; t..
2025.02.11 -
스프링 MVC - 시작하기
@RequsetMapping-스프링은 어노테이션을 활용한 매우 유연하고, 실용적인 컨트롤러를 만들었는데 이것이 바로 @RequestMapping 어노테이션을 사용하는 컨트롤러입니다. 스프링 프레임워크가 MVC 부분이 약해서 스프링을 사용하더라도 MVC 웹 기술은 스트럿츠 같은 다른 프레임워크를 사용했었습니다. 그런데 @RequestMapping 기반의 어노테이션이 컨트롤러가 등장하면서 MVC 부분도 스프링의 완승으로 끝이 났습니다. @RequestMapping- RequestMappingHandlerMapping- RequestMappingHandlerAdapter위 2개는 가장 우선순위가 높은 핸들러 패익과 어댑터이다. 스프링에서 주로 사용하는 어노테이션 기반의 컨트롤러를 지원하는 핸들러 매핑과 핸들러..
2025.02.11 -
핸들러 매핑과 핸들러 어댑터
핸들러 매핑과 핸들러 어댑터가 어떤 것들이 어떻게 사용되는지 알아보자. Controller 인터페이스과거 버전 스프링 컨트롤러org.springframework.web.servlet.mvc.Controllerpublic interface Controller {ModelAndView handleRequest(HttpServletRequest request, HttpServletResponseresponse) throws Exception;}현재는 어노테이션 중심의 컨트롤러를 사용하고 있습니다. 하지만, 과거에는 인터페이스 구현으로 컨트롤러를 사용했습니다. 처음에는 이런 막막한 형식의 컨트롤러를 제공했습니다. 간단 구현import jakarta.servlet.http.HttpServletRequest;imp..
2025.02.10 -
Spring MVC
Spring MVC 전체구조 Spring MVC 프레임워크 구조 직접 만든 프레임 워크 -> 스프링 MVC 비교1.FrontController -> DispatcherServlet (가장 중요) 2.handlerMappingMap -> HandlerMapping3.MyHandlerAdapter -> HandlerAdapter4.ModelView -> ModelAndView5.viewResolver -> ViewResolver6.MyView -> View DispatcherServlet 구조 살펴보기-스프링 MVC도 프론트 컨트롤러 패턴으로 구현되어 있다.-스프링 MVC의 프론트 컨트롤러가 바로 디스패치 서브릿이다.-그리고 이 디스패치 서블릿이 스프링 MVC의 핵심이다. DispatcherServlet..
2025.02.10