스프링 부트 실행 시 자동으로 실행해주기

gnoesnooj·2022년 5월 17일
0

배경

내가 구현하고 있던 흡연장은, 공공데이터 포털에서 로드 후 db에 저장해주는 기능을 구현하고 있었다.
하지만 생각해보니, 굳이 이 기능을 api화해서 url을 통한 접근보다는 스프링부트 실행 시 자동으로 db에 저장해주고 싶었다. api화를 해놓는다면 사용자 부주의로 같은 api를 여러번 호출해서 같은 데이터가 중복되어 저장될 가능성도 높았기 때문이다.

구현

우선 컨트롤러와 서비스의 모든 코드를 삭제해주고, ApiLoader 라는 클래스를 만들어주어서 ApplicationRunner 를 상속받게 하고, 오버라이드 된 run() 을 통해서 스프링부트 실행시 자동으로 내가 원하는 메소드들을 실행할 수 있도록 해주었다.

profile
누구나 믿을 수 있는 개발자가 되자 !

0개의 댓글