전체 글(89)
-
HttpServletRequest - 개요
Http 요청 메시지를 개발자가 직접 파싱해서 사용해도 되지만 매우 불편할 것이다. 서블릿은 개발자가 Http 요청 메시지를 편리하게 사용할 수 있도록 개발자 대신에 Http 요청 메시지를 파싱한다. 그리고 그 결과를 HttpServletRequest 객체에 담아서 제공한다. 임시 저장소 기능해당 Http 요청이 시작부터 끝날 때 까지 유지되는 임시 저장소 기능저장 : request.setAttribute(name, value)조회 : request.getAttribute(name)세션 관리 기능request.getSession(create : true) 중요HttpServletRequest, HttpServletResponse를 사용할 때 가장 중요한 점은 이 객체들이 Http 요청 메시지, Htt..
2024.08.24 -
Hello 서블릿
스프링 부트 환경에서 서블릿을 등록하고 실행해보자. 참고 > 서블릿은 톰캣 같은 웹 애플리케이션 서버를 직접 설치하고,그 위에 서블릿 코드를 클래스 파일로 빌드해서 올린 다음, 톰캣 서버를 실행하면 된다. 하지만 이 과정은 매우 번거롭다. > 스프링 부트는 톰캣 서버를 내장하고 있으므로, 톰캣 서버 설치 없이 편리하게 서블릿 코드를 실행할 수 있다. @ServletComponentScan스프링 부트는 서블릿을 직접 등록해서 사용할 수 있도록 @ServletComponentScan을 지원한다. HelloServletpackage hello.servlet.basic;import jakarta.servlet.ServletException;import jakarta.servlet.annotation.Web..
2024.08.24 -
REST API - HATEOAS
HATEOAS란 REST API를 사용하는 클라이언트가 전적으로 서버와 동적인 상호작용이 가능하도록 하는 것을 의미합니다. 이러한 방법은 클라이언트가 서버로부터 어떠한 요청을 할 때, 요청에 필요한 URI를 응답에 포함시켜 반환하는 것으로 가능하게 할 수 있습니다.
2024.08.24 -
Event 생성 API 구현 : 입력값 제한하기
EventRepositorypackage com.example.inflearnrestapi.events;import org.springframework.data.jpa.repository.JpaRepository;public interface EventRepository extends JpaRepository {} Eventpackage com.example.inflearnrestapi.events;import jakarta.persistence.*;import lombok.*;import org.springframework.beans.factory.annotation.Autowired;import java.time.LocalDateTime;@Builder @AllArgsConstructor @NoArg..
2024.08.22 -
REST API - 201 응답 받기
테스트 할 것입력값들을 전달하면 JSON 응답으로 201이 나오는지 확인.Location 헤더에 생성된 이벤트를 조회할 수 있는 URI 담겨 있는지 확인id는 DB에 들어갈 때 자동생성된 값으로 나오는지 확인입력값으로 누가 id나 eventStatus, offline, free 이런 데이터까지 같이 주면?Bad_Request로 응답 vs 받기로 한 값 이외는 무시입력 데이터가 이상한 경우 Bad_Request로 응답입력값이 이상한 경우 에러비즈니스 로직으로 검사할 수 있는 에러에러 응답 메시지에 에러에 대한 정보가 있어야 한다.비즈니스 로직 적용 됐는지 응답 메시지 확인offline 과 free 값 확인응답에 HATEOA와 profile 관련 링크가 있는지 확인.self(view)update(만든 사람은..
2024.08.21 -
REST API - 테스트 만들기
스프링 부트 슬라이스 테스트@WebMvcTestMockMvc 빈을 자동 설정 해준다.웹 관련 빈만 등록해준다. (슬라이스) MockMvc스프링 MVC 테스트 핵심 클래스웹 서버를 띄우지 않고도 스프링 MVC (DispatcherServlet)가 요청을 처리하는 과정을 확인할 수 있기 때문에 컨트롤러 테스트용으로 자주 쓰임.package com.example.inflearnrestapi.events;import org.junit.jupiter.api.Test;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.boot.test.autoconfigure.web.servlet.WebMvcTest;impo..
2024.08.21