본문 바로가기

전체 글209

Spring: HTTP Body 요청 처리하기 HTTP 요청의 Body에 포함된 데이터를 처리할 때는 POST, PUT, PATCH, DELETE 메서드를 사용한다. 해당 메서드를 통해서 클라이언트가 서버에 데이터를 전송하고, 서버는 이 데이터를 바탕으로 로직을 수행한다. JSON 데이터 처리하기HTTP 요청의 Body에서 데이터를 가져오기 위해서는 @RequestBody 어노테이션이 필요하다. 아래 예제는 "name : codingji"와 "url : coding-ji.tistory.com"이라는 JSON 형식의 데이터를 POST 요청으로 받아 처리하는 로직이다. 아래 예제를 보여주기 위해서 포스트맨을 사용했다. package com.example.project1.controller;import org.springframework.http.Http.. 2024. 11. 3.
Spring : @GetMapping에 대해서 @GetMapping은 HTTP GET요청을 처리하기 위한 어노테이션이다. 특정 URL 경로와 메서드를 연결하여 클라이언트가 해당 URL로 GET 요청을 보낼 때, 지정된 메서드가 호출 된다. @Controller 혹은 @RestController 에서 사용이 가능하지만, 일반적으로 RESTful을 설계할 때 @RestController와 함께 사용한다. @Controller와 사용할 때는 @ResponseBody를 추가해야 JSON형식으로 응답을 반환할 수 있다. @GetMapping사용하기1. DTO 클래스를 정의한다.물품 정보를 전달하기 위한 데이터 전송 객체인 ProductDTO를 Record 클래스로 작성한다. package com.example.project.dto;public record P.. 2024. 11. 3.
Spring : 파라미터를 처리하는 방법 ( @PathVariable, @RequestParam, @RequestMapping ) 파라미터가 여러개 일 때파라미터가 여러개일 경우에는 @RequestMapping과 @GetMapping을 사용하여 간단하게 로직을 작성할 수 있다. 아래 예시는 /product 경로를 사용하여 여러 개의 파라미터를 처리한다. package com.example.project.controller;import com.example.project.dto.ProductDTO;import org.springframework.http.HttpStatus;import org.springframework.http.ResponseEntity;import org.springframework.web.bind.annotation.GetMapping;import org.springframework.web.bind.annotat.. 2024. 10. 27.
Spring : Record 클래스 사용하기 Java의 Recod 클래스는 생성자, getter 메서드, toString메서드 등이 메서드들이 자동으로 생성되어 기존 클래스를 작성할 때보다 간결하게 객체를 생성할 수 있다. Record 클래스는 final로 상속이 불가능하며, 필드는 암묵적으로 final이다. 스프링에서 Record 클래스 사용하기1. Record 클래스로 DTO를 생성한다. Record 클래스로 생성하면 @Getter, @AllArgsConstructor, @ToString, @EqualsAndHashCode 어노테이션이 기본값으로 설정된다. 자동으로 제공되기 때문에 별도로 어노테이션을 추가할 필요가 없다. 아래 에제는 사용자ID, 장바구니 물건리스트, 장바구니 총합계에 대한 정보를 가지고 있는 CartDTO 클래스 이다. pac.. 2024. 10. 27.
Spring : Lombok(롬복)에 대해 알아보자 Lombok은 자주 사용되는 메서드를 Annotation을 사용해 자동으로 생성해주는 JAVA 라이브러리이다. Lombok을 사용하면 getter, setter메서드 생성, 생성자 생성, toString()생성 등을 어노테이션을 사용해 자동으로 생성해주어 코드가 간결해진다. 단, Lombok은 플러그인을 설치해야 하며 디버깅 시 어려움이 있을 수 있다.   IntelliJ에서 Lombok설치(1) 파일 → 설정에 들어간다. (Ctrl + Alt + S)(2) 설정 창이 뜨면 플러그인을 누른다.(3) 플러그인에서 마켓플레이스를 누르고 Lombok을 검색하여 설치한다. (4) 설치 후 build.gradle로 들어가 dependencies에 아래 코드를 추가한 후에 새로고침한다.  implementation.. 2024. 10. 27.
Spring : DTO(Data Transfer Object)에 대해서 DTO(Data Transfer Object)는 주로 데이터 전송을 목적으로 사용하는 객체이다. @Controller를 통해서 컬렉션 데이터를 반환할 때, Map의 경우에 키와 값을 직접 설정해야하며 Object 타입으로 값을 저장하게 되면 데이터 타입 체크를 하지 못하는 경우 등의 여러 문제들이 발생하는데 DTO를 통해 해결할 수 있다.  DTO 사용하기1. DTO 클래스를 정의한다.사용자 정보를 전달하기 위한 데이터 전송 객체인 UserDTO 클래스를 생성하여, 데이터 설정 및 getter & setter 메서드를 작성한다.package com.example.project.dto;// DTO 정의 : UserDTO 클래스는 사용자 정보를 전달하기 위한 데이터 전송 객체public class UserD.. 2024. 10. 27.