본문 바로가기

Spring3

@RequestBody란? 핵심@RequestBody는 HTTP 요청 본문에 담긴 데이터를 자바의 객체로 변환(역직렬화)해주는 역할을 한다.이때 안쪽 로직에서는 HttpMessageConverter 인터페이스와 Jackson 라이브러리가 사용된다. 작동 원리스프링 부트가 요청을 받아서 컨트롤러까지 도달하는 과정을 알아보자. step1. 문지기 (DispatcherServlet)HTTP 요청이 들어오면 스프링의 제일 앞단에 있는 DispatcherServlet 이 요청을 받는다. step2. 해결사 (HandlerAdapter & ArgumentResolver)스프링은 컨트롤러 메서드를 실행하기 전에, 파라미터 앞에 @RequestBody가 붙어있는 것을 확인한다. 바로 전달을 하면 안되고, 객체로 만들어서 줘야 함을 알아차린다.. 2025. 12. 30.
스프링에 h2 DB 연결하기 강의만 따라 칠 때는 몰랐는데 막상 아무것도 없이 해보니 DB 연결부터 막혔다. 그래도 무사히 성공해서 더 이상 헤매지 않도록 글을 작성해본다. 1. build.gradle 의존성 추가 데이터베이스로 JPA를 사용하기 위해 `build.gradle`에 의존성을 추가해준다. https://start.spring.io/ 페이지에서 스프링 부트 프로젝트를 만들 때 `spring data jpa`를 추가해주면 된다. 만약 그렇지 않을 시 아래처럼 의존성을 직접 추가해주면 된다. plugins { id 'java' id 'org.springframework.boot' version '3.2.4' id 'io.spring.dependency-management' version '1.1.4' } group = 'co.. 2024. 4. 10.
[Spring] h2적용 후 postman으로 테스트하기 1. 의존성 추가 build.gradle 파일에 h2, jpa 의존성을 추가한다. dependencies { // ..생략 implementation 'org.springframework.boot:spring-boot-starter-data-jpa' runtimeOnly 'com.h2database:h2' } 2. 하이버네이트를 사용하여 코드 작성 본 코드에서는 Spring data JAP를 사용했다. Spring data JAP의 reposity를 사용하여 DB를 호출하도록 한다. Controller @RequiredArgsConstructor @RestController // HTPP Response Body에 객체 데이터를 JSON 형식으로 반환하는 컨트롤러 public class BlogApiCo.. 2024. 2. 22.