TIL(204)
-
간단한 API를 직접 만들어보자 (3)
🎯 오늘 진행한 내용 card의 정보를 저장하기 위해 repository를 작성package org.example.spartatodolist.domain.card.repositoryimport org.example.spartatodolist.domain.card.model.Cardimport org.springframework.data.jpa.repository.JpaRepositoryinterface CardRepository: JpaRepository {} CardRepository가 JpaRepository를 상속받음으로서 기본적인 CRUD 함수를 자동적으로 사용할 수 있게 된다JpaRepository Interface는save() : 엔티티 저장findById() : Id기반으로 엔티티 찾기fi..
2024.05.17 -
간단한 API를 직접 만들어보자(2)
🎯 오늘 진행한 내용card의 controller작성 및 dto작성에 이어서 user의 controller와 dto를 작성package org.example.spartatodolist.domain.user.controllerimport org.example.spartatodolist.domain.user.dto.SignUpRequestimport org.example.spartatodolist.domain.user.dto.UpdateUserProfileRequestimport org.example.spartatodolist.domain.user.dto.UserResponseimport org.springframework.http.ResponseEntityimport org.springframework...
2024.05.16 -
간단한 API를 직접 만들어보자(1)
🎯 오늘 진행한 내용 작성해야하는 API의 구현 목표: CRUD기본적인 생성,조회,수정,삭제를 할 수 있는 API를 만드는것이 목표!자신의 할일카드를 생성,조회,수정,삭제할 수 있는 API를 만들어보자 기본적인 세팅API가 잘 작동하는지 확인하기 위한 Swagger를 적용한다 우리는 단순히 card의 crud를 구현하는 api를 작성하기 때문에 간단한 패키지 구조를 만들어본다 card 패키지 안의 dto안에 card의 dto를 작성package org.example.spartatodolist.domain.card.dtodata class CardResponse( val id:Long, val title: String, val description: String?, val date..
2024.05.15 -
알고리즘(푸드 파이트 대회)
오늘은 간단한 알고리즘 문제를 풀어보자! 🔥알고리즘 문제 수웅이는 매달 주어진 음식을 빨리 먹는 푸드 파이트 대회를 개최합니다. 이 대회에서 선수들은 1대 1로 대결하며, 매 대결마다 음식의 종류와 양이 바뀝니다. 대결은 준비된 음식들을 일렬로 배치한 뒤, 한 선수는 제일 왼쪽에 있는 음식부터 오른쪽으로, 다른 선수는 제일 오른쪽에 있는 음식부터 왼쪽으로 순서대로 먹는 방식으로 진행됩니다. 중앙에는 물을 배치하고, 물을 먼저 먹는 선수가 승리하게 됩니다.이때, 대회의 공정성을 위해 두 선수가 먹는 음식의 종류와 양이 같아야 하며, 음식을 먹는 순서도 같아야 합니다. 또한, 이번 대회부터는 칼로리가 낮은 음식을 먼저 먹을 수 있게 배치하여 선수들이 음식을 더 잘 먹을 수 있게 하려고 합니다. 이번 대회를..
2024.05.14 -
예외처리를 전역적으로
✔오늘 배운 중요한 🔑 pointException을 전역적으로 처리하고 싶을때는 @ControllerAdvice, @RestControllerAdvice 어노테이션을 사용하면 된다.🎯 오늘 배운 내용 Web Layer의 컨틀롤러와 DTO를 작성하면서 클라이언트의 요청과 응답은 구현을 한 상태이다그렇다면 요청에 따른 요구사항을 코드로 작성하는 부분은 어디서 할까?바로 Service Layer에서 담당한다! 그렇다면 Controller와 Service를 어떻게 연결할까?여러 방법이 있지만 여기서는 생성자 주입을 활용하였는데 단순히 Interface를 주입을 해주어도이 Interface를 상속받는 @service 어노테이션이 붙은 Bean들을 알아서 찾아준다!interface CourseService ..
2024.05.13 -
RequestMapping 너는 내가 담당한다
✔오늘 배운 중요한 🔑 point프로세스 간 데이터를 전달하는 객체인 DTO는 Controller의 인자로 사용되는데 기본적으로 DTO는 불변성을 유지하기 때문에 data class로 작성한다그 DTO를 Controller의 인자로 사용될때 사용하는 어노테이션이 @RequestBody 이다🎯 오늘 배운 내용 Spring에서 Controller를 등록을 할때 data만 return하는 경우에는 @RestController 를 사용할 수 있다@RestControllerclass CourseController {}@RestController 어노테이션을 작성함으로서 CourseController class를 Bean으로 등록한다CourseController가 컨트롤러로 등록이 된건 OK ,그렇다면 이 ..
2024.05.12