코틀린 4

Spring/Kotlin
[Kotlin+Springboot+JPA] Exception Handling by Kotlin

사용할 클래스 1. ErrorCode : 모든 예외 케이스를 관리 하는 클래스. 2. ErrorResponse: JSON 형식으로 에러 응답 형식 작성. 3. Exception: 기본적으로 제공되는 Exception 이외에 추가할 Exception (예시로 EntityNotFound 그냥 구현). 4. GlobalExceptionHandler - @ControllerAdvice: 프로젝트 전역에서 발생하는 Exception을 잡아주는 클래스 - @ExceptionHandler: 특정 Exception 을 지정해서 별도로 처리함. 1. ErrorCode를 Enum 클래스로 정의 해준다. enum class ErrorCode( private val status: Int, private val errorCod..

Spring/Kotlin
[Springboot + Kotlin] Slack 채널 메세지 전송 연동.

동기 새로운 게시글이 작성될 때, 알림을 받고 싶어서 slack 을 이용하기로 정하였고 가벼운 실습을 진행하기로 하였다. 1. Slack -> 앱 -> " Incoming WebHooks"를 추가해준다! 추가를 하고나서, 원하는 채널을 생성 또는 선택 하면 생성되는 WebHook URL 을 복사해줍니다. 예시 : https://hooks.slack.com/services/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 !! 다음과 같은 설정을 할 수 있습니다! !! 2. 프로젝트의 applicatiion.yml 파일에 아래 내용을 추가합니다! (저는 게시글을 생성하면 Slack 에 메세지를 전송해주기 위한 목적으로 생성하겠습니다.) slack: webhook-ur..

Spring/Kotlin
[Kotlin + Springboot + JPA] Entity 생성에 관하여.

무작정 코틀린에 대해서 접하였고 기본적인 문법을 공부하고, 간단한 게시판CRUD를 만들면서 참고할만한 글들을 찾아보는데 어떠한 글은 Entity 생성시 data class 를 사용하는 글과, 일반 class를 사용하는 경우가 다양하여서 한번 무슨차이가 있을지 정리해보고 싶었다. 우선 data class 가 뭔지 살펴보자!! 간단한 정보만 정리해보면, https://kotlinlang.org/docs/data-classes.html data 를 저장하기 위한 클래스라고 한다. 컴파일러가 자동으로 primary constructor 의 properties 로 부터 아래의 멤버들을 생성한다. equals() / hashCode() toString(); 선언 순서대로 각 property 에 해당하는 compon..

Spring/Kotlin
[Kotlin + SpringBoot + JPA] Swagger 설정 및 동작

Swagger 사용 설정 저는 본격적인 개발을 시작하기 전에, Swagger를 사용 설정을 해주었습니다. 1. 우선 필요한 해당 의존성을 추가해주었습니다. //swagger 추가. implementation("io.springfox:springfox-swagger2:2.9.2") implementation("io.springfox:springfox-swagger-ui:2.9.2") 2. @Configuration을 추가해주었습니다. @Configuration @EnableSwagger2 class SwaggerConfig { @Bean fun api(): Docket { return Docket(DocumentationType.SWAGGER_2) .select() .apis(RequestHandlerSe..