본문 바로가기

spring boot

(4)
API 예외처리 공통화 2 이번 글에서는 API 예외처리를 공통화해볼 것이다. 1. Global Exception 처리를 위한 class 생성 GlobalExceptionHandler package hello.hellospring.exception; import lombok.extern.slf4j.Slf4j; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.ControllerAdvice; import org.springframework.web.bind.annotation.ExceptionHandler; @Slf4j @Controlle..
API 예외처리 공통화 1 Spring Boot로 프로젝트를 만들다보면 API도 꽤 많이 작성하게 된다. (아님 말고,,,,,,) 이 API를 작성할 때 예외처리도 해야한다. ex) 회원가입 시 아이디나 전화번호 중복되는 경우, 상품주문 시 재고가 부족한 경우 등등 우리는 굉장히 많은 예외처리를 해야한다. 이 예외는 Service단에서 던지게 되고, 처리는 Controller단에서 하게 된다. 또한, 이러한 예외처리를 매번 반복하게 된다. 먼저 공통화하지 않는 경우, 예외처리를 살펴보자! 1. Error 처리를 위한 class 생성 ErrorMessage.java package hello.hellospring.exception; import lombok.AllArgsConstructor; @AllArgsConstructor pu..
Spring Boot + JPA 설정 Spring data jpa를 Spring Boot와 함께 사용하는 법에 대해 알아보겠다! 설정 jpa만 사용하는 경우에 jpa관련 설정을 'persistence.xml'을 통해 굉장히 길고 복잡하게 해야 했다. 하지만 spring boot를 사용하게 되면 이러한 설정들이 설정파일(.yml이나 properties)을 통해 자동화된다. 다음은 application.yml을 통해 설정한 예시이다. spring: # DB 접속 설정 datasource: url: jdbc:h2:tcp://localhost/~/jpashop username: sa password: driver-class-name: org.h2.Driver # JPA 설정 jpa: hibernate: ddl-auto: create properti..
Spring Boot Project 생성 Spring Boot Project는 Spring initializr를 사용하여 쉽게 생성할 수 있다. 먼저 해당 사이트에 있는 옵션들을 살펴보겠다. Maven vs Gradle Maven → Gradle로 넘어가는 추세이다. Spring Boot version 안정된 버전을 사용해야 한다. 특히 snapshot이라고 명시된 버전은 사용금지이다. Dependencies 적당히 필요한 Dependency를 설정해줘야 한다. 다음은 거의 필수로 들고 가는 라이브러리들이다. Spring web 톰캣 서버 내장, Spring MVC, RESTFUL API 포함 Spring Data JPA JPA 라이브러리(하이버네이트) DB 관련 Dependency lombok .gitIgnore 다 만들고 나서 git rep..