본문 바로가기

프로그래밍/Spring Boot13

Kotlin 에서 Slf4j를 통해 로깅하기 개요 8. 로그 파일 만들기, 인터셉터 구현하기 코드 확인을 위해, 관련 PR 링크를 첨부한다. #5 로깅 구현 및 로깅을 위한 인터셉터 구현하기 by include42 · Pull Request #10 · include42/spring-books-diary Resolved: #5 실수로 Develop 브랜치에 커밋해 버려서, Rev kafcamus.tistory.com 이전에 위 글을 통해, java 기반의 spring 프로젝트에서 어떻게 로깅을 하는지에 대해 정리해 두었다. 다만 kotlin에서는 lombok 사용에 불편함이 있어, 다른 방식으로 로깅을 수행해야 한다. 이때 어떻게 하면 좋은지 간단하게 정리해 보고자 한다. 팩토리 메소드 아래와 같은 코드를 전역 범위에서 쓸 수 있도록 만들어 준다. .. 2024. 1. 1.
Spring Cloud OpenFeign 테스트하기 본 글은 이전에 작성된 글 (링크) 에서 이어지는 글입니다. 개요: 테스트의 두 가지 방법 Feign 테스트하기: 직접 요청 보내기 직접 서버에 요청을 보내 테스트하면 다음의 이점을 누릴 수 있다. 테스트용 서버를 통해 통합 테스트처럼 진행할 수 있다. Mock Server를 통해 테스트할 경우, 실제 서버와 충돌이 일어나도 알 방법이 없다. 그러나 서버와 직접 통신하게 되면, 기능 외적인 문제에 대해 미리 대응할 수 있다. 코드는 아래와 같다. (Java로 작성) //테스트용 서버에 맞게 환경을 조절하고, logger Level을 FULL로 지정하여 상세한 로그를 출력한다. @SpringBootTest(properties = {"env=test", "feign.client.config.default.l.. 2022. 3. 7.
Spring Cloud OpenFeign 사용하기 본 글은 아래의 링크를 바탕으로 작성되었다. 우아한형제들 기술 블로그 [우아한 feign 적용기]:https://techblog.woowahan.com/2630/ Bealdung [Introduction to Spring Cloud OpenFeign]: https://www.baeldung.com/spring-cloud-openfeign Bealdung [Defferences Between Betflix Feign and OpenFeign]: https://www.baeldung.com/netflix-feign-vs-openfeign Intro Spring Cloud OpenFeign Docs: https://spring.io/projects/spring-cloud-openfeign about Feign.. 2022. 3. 7.
LocalDateTime 사용 시 주의할 몇몇 오류사례 오늘은 프로젝트를 진행하다가 당황스러운 실수를 해서, 블로그에 간단히 기록해보려고 한다. 요약하자면 다음과 같다. LocalDateTime.MIN / LocalDateTime.MAX 값이 얼마인지 미리 알아두자 MySQL의 timestamp의 범위를 미리 숙지하자 LocalDateTime의 MIN/MAX 전기차 충전소 정보 프로젝트를 진행하던 중, 문자열로 된 날짜/시간 정보를 받을 일이 생겼다. 전기차 충전기의 최근 충전 시간 정보였는데, LocalDateTime.parse로 파싱하다 보니 에러가 났다. 알고 보니 공공 API의 해당 필드에 빈 값이 들어가는 경우가 존재했던 것이다. 찜찜하지만 그렇다고 API를 바꿀 수는 없으니...임시변통으로 다음과 같은 방법을 취했다. (...) if(Objects.. 2021. 10. 27.
[SpringBoot] 프로젝트에 Swagger 적용하기 오늘 글은 다음 목적을 바탕으로 작성되었다. SpringBoot 프로젝트의 문서화를 위해 Swagger를 적용한다. Swagger의 다양한 구성과 설정 방법에 대해 알아본다. Swagger를 통해 컨트롤러, 모델, 요청, 응답을 문서화한다. Swagger Swagger란 개발한 REST API를 편리하게 문서화 해주고, 이를 통해서 편리하게 API를 호출해보고 테스트할 수 있는 프로젝트이다. 기본 swagger2 프로젝트 뿐 아니라 다양한 구성을 가지고 있다. MVNRepository에 검색해보자. 본 글에서 다룰 주요 구성은 다음과 같다. SpringFox Swagger 2는 적용된 프로젝트의 응답, 요청, 예시 등의 정보를 JSON 쌍으로 만들어준다. SpringFox UI는 Swagger 2를 통해.. 2021. 9. 6.
[SpringBoot] application.properties를 yml로 교체하기 이 글은 다음 목적을 가지고 작성되었다. YAML이 무엇인지 알아본다. 스프링에서 YAML을 어떻게 활용할 수 있는지 알아본다. configuration 파일을 yml 파일로 교체해본다. YAML YAML은 YAML Ain't Markup Language 라는 의미로, 'YAML은 마크업 언어가 아니다'라는 재귀적인 의미를 가진다. 마크업 언어가 아니면 YAML은 무슨 언어라는 것일까? 일단 공식 웹페이지에 가보자. The Official YAML Web Site yaml.org 공식 웹페이지에서는 YAML을 다음과 같이 정의한다. YAML is a human friendly data serialization standard for all programming languages. 해석하자면 다음과 같다:.. 2021. 8. 31.
반응형