본문 바로가기
반응형

boot3

[spring boot] 스프링 스케줄러 사용해보기 스프링 부트로 기능을 구현하다 보니 일정시간에 작업을 진행해야 하는 경우가 생긴다. 예를 들어 매일 12시에 맞춰 그날로부터 며칠이상 존재했던 데이터를 삭제하는 경우라던지, 새로운 데이터를 구해야 하는 것(전일 기준 인기 순위와 같은...)과 같은 작업을 진행해야 할 필요가 생긴다. 그래서 어떻게 하면 기능을 구현할 수 있을지 찾아본 결과 크게 두가지 방법으로 진행할 수 있는 것으로 확인했다. 바로 quartz와 spring scheduler이다. quartz는 조금 설정방법이 어려운 대신 섬세하게 설정이 가능하며 스케줄러 간의 클러스팅이라던가 후처리기능이 더 뛰어나다. 이번에는 단순하게 일정 기간 이후에 데이터를 삭제하는 작업을 진행하게 되어 간단하게 spring scheduler를 사용해보려고 한다... 2023. 10. 19.
[JPA] 페이징 처리, Paging (Pagination, Infinite Scroll) 페이징 처리 페이지네이션? 무한 스크롤? 페이징 처리는 한 번에 모든 데이터를 가져오면 많은 시간이 걸리기 때문에 단위를 나눠서 데이터를 가져올 수 있도록 단편화시키는 것을 의미한다. 구글만 보더라도 아래와 같이 페이지네이션을 처리해 두었다. 위와 같이 페이지를 나누어 사용자가 골라 접근할 수 있도록 만든 것을 페이지네이션이라고 부른다. 웹페이지를 이용할 때 흔하게 볼 수 있는 모습이다. 반면 요즘에는 SNS 같은 곳을 보면 이러한 숫자방식의 페이지네이션이 아닌 스크롤을 모두 내리면 추가적인 콘텐츠를 불러오는 방식의 무한 스크롤(infinite scroll) 방식도 많이 사용한다. 하지만 이러한 방식의 차이는 어떻게 보여주냐의 차이일 뿐 내부적인 로직은 거의 흡사하다. 기본적인 동작 원리는 조회할 때 얼.. 2023. 6. 21.
[Spring boot] 설정 정보(application.yml / properties) 분리시키기 - spring profiles 사용 이유 현재 진행 중인 프로젝트에서 오라클 클라우드 프리티어를 이용해서 배포 테스트를 진행하게 되었다 현재 application.yml을 서브 모듈 ( https://teching.tistory.com/144 )을 사용해서 관리하고 있는 상황이었다. spring boot 설정 정보 외부에서 관리하기 2 - submodule https://teching.tistory.com/143 [spring boot 설정 정보 외부에서 관리하기 Spring boot 설정 정보 관리하기 서버를 github를 사용해서 형상관리를 할 생각인데 레파지토리를 public으로 열어두려고 한다... 공개 teching.tistory.com 오라클 클라우드의 DB는 특이하게 지갑을 이용해서 접속해야 하는데 그 경로를 지정해주어야.. 2023. 6. 12.
반응형