2022/09/01 4

Chapter 10. API document 만들기 (API 문서화)

10.1 API(Application Interface) document API documentaion(API 문서화) 프론트 개발자에게 문서를 전하기 위해 필요하다. 백엔드 개발자끼리도 공유해야한다. API를 제공하는 웹 사이트는 보통 API document도 함께 제공한다. API 문서화 방식 txt 파일에 정리한다. => 가독성 떨어지고 변경 사항 추적이 어렵다. API 문서화 tool을 많이 이용한다. Swagger 서버로 요청되는 URL 리스트를 HTML 화면으로 문서화 및 테스트할 수 있는 라이브러리이다. API 문서를 만들면 하나의 URL로서 공유 가능하다. 다른 사람들이 URL을 통해 들어가서 API 호출 가능하다. ReDoc GitBook 10.2 Swagger 적용하기 (1) Ex) s..

Chanpter 09. 예외 처리하기

9.1 예외 처리란? Spring의 기본적인 예외처리 White level 페이지는 스프링이 기본적으로 해준는 예외 처리 중 하나이다. bad request Java지원 예외처리: try-catch custom exception을 만들어서 처리한다. Ex) Custom Exception 예외 상황을 위한 예외 클래스 InvalidDate를 만든다. RuntimeException를 상속 받는다. RuntimeException코드를 보면 아래과 같이 에러메시지를 매개변수로 줄 수 있다. public RuntimeException(String message) { super(message); } InvalidDate 클래스 아래와 같이 작성하면 InvalidDate가 호출될 때 메시지가 함께 반환된다. pack..

Chapter 08. 로그(log) 남기기

8.1 Spring Boot Logging 이란? log를 쓰는 이유 서비스 동작 상태 파악 장애 파악 System.out.print() => 출력 외에 부가 기능(오랜된 로그를 지우거나 로그를 파일에 저장하다거나 기능)이 없다. Logging library 사용 => 실무에서 많이 사용한다. ex) log4f => log4j2 logback: log4f보다 기능이 많다 log level(로그 레벨) Error: 즉시 조치를 취해야하는 심각한 경우에 발생한다. Warn: 로직 상 유효성을 확인할 때, 쓰인다. Info: 서비스를 운영하는데 중요한 작업이 끝나는 경우에 작성한다. Debug: 개발 단계에서 많이 사용하고 위의 레벨들이 실제 파일에 로그를 저장하고 남기도록 설정한다. Trace: 개발 단계에..

Chapter 07. 날씨 저장 스케쥴링

7.1 매일 자정에 날씨 데이터 불러오기 캐싱(Caching)이란? 캐싱은 캐시(cache)라는 빠른 메모리 영역으로 데이터를 가져와서 접근하는 방식을 말한다. 데이터 등을 미리 복사해서 저장해두는 것을 말한다. 요청을 빠르게 처리한다. 캐시 방식 웹 브라우저에서 캐시 - ex) 크롬에서 네이버 화면에 쓰일 데이터를 가져온다. 사이트에 재접속할 때는 기존의 화면에서 바뀐 부분만을 데이터를 가져오므로 로딩이 빠르다. 서버에서 캐시 Client: 모바일 앱, 웹 한번 들어갔던 사이트 정보를 컨트롤러에서 저장해뒀다가 재접속하는 경우에 복사해둔 내용을 보여준다. 속도도 빨라지고 서버의 부하도 줄어든다. 캐싱할 때 유의사항 요청한 것에 대해 응답이 변하지 않는 경우에만 사용 가능하다. 캐시 적용 전 openwea..