
🚨 [에러 발생]동영상에 대한 통계와 정산 작업, 광고에 대한 통계와 정산 작업을 배치를 통해 수행하기 위해 다음과 같이 설정하였다. @Component@RequiredArgsConstructorpublic class BatchJobRunner { private final JobLauncher jobLauncher; private final Job calculateDailyVideo; private final Job calculateDailyAdvertisement; @Scheduled(cron = "*/10 * * * * ?") // public void runCalculateDailyVideoJob() throws Exception { System.out.pr..
🧑💻 이번 포스팅에서는 즉시로딩과 지연로딩에 대해 이야기해보고자 한다. 🧑💻 즉시로딩과 지연로딩데이터베이스에서 연관 엔티티를 불러오는 방식에 따라 즉시로딩과 지연로딩으로 나뉜다. 💡 즉시로딩즉시로딩은 어떤 엔티티를 조회할 때, 연관관계가 맺어져 있는 다른 엔티티까지 모두 조회하는 방식이다. 💡 지연로딩지연로딩은 즉시로딩과 다르게, 엔티티가 필요하기 전에는 해당 엔티티를 미리 조회하지 않는 방식을 말한다. 🧑💻 언제 어떠한 방식을 사용해야 하는가? 💡 즉시로딩즉시로딩은 연관된 엔티티를 전부 조회하는 방식이기 때문에 연관된 엔티티의 데이터가 필요한 경우에 사용할 수 있다. 하지만, 모든 연관된 데이터를 조회하기 때문에 초기 로딩 시간이 길고, 메모리에 과부하가 올 수 있다는 단점이 ..

🧑💻정산 시스템을 개발하는 과정에서 여러 사람들의 데이터를 활용해 정산을 진행해야 했다. 이 과정에서 Spring Batch를 활용하게 되었다. 그리하여 이번 포스팅에서는 Spring Batch가 무엇인지에 대해 알아보고자 학습하며 정리한 내용을 이야기해보고자 한다. 📚 Spring BatchSpring Batch란 대용량의 데이터에 대한 일괄 처리 작업에 사용되는 프레임워크이다. 다시 말해, 한 번에 대량의 데이터를 처리하는 작업에 사용된다는 것이다. 예를 들어, DB나 파일에서 데이터를 가져와 모든 데이터에 동일한 연산을 수행하고, 이들을 다시 DB나 파일에 저장하는 경우에 유용하게 활용을 할 수 있다. 📚 Spring Batch의 구성 요소Spring Batch의 구성 요소에 대해서 ..
Annotation이란 무엇이고 구체적으로 어떤 것이 있는가 📚 Annotation이란Annotation이란 코드에 메타 데이터를 추가해 특정 동작을 할 수 있게끔 해주는 역할을 하는 것이다. 이는 원어가 가진 의미인 '주석'같이 클래스나 메서드 등에서 주석처럼 붙여 사용할 수 있는 것이다. 📚 spring boot에서 어떤 동작들을 자동으로 동작하게끔 하나요?spring boot에서는 다양한 annotation이 사용되는데, 스프링의 개발 패턴 중 하나인 MVC와 관련한 어노테이션에 대해 간략하게 이야기를 해보겠다. 💡 @SpringBootApplicationSpring Boot 애플리케이션의 메인 클래스를 지정할 때 사용되는 어노테이션이다. 내부적으로 @Configuration, @Enabl..
📚 MVC 모델이란 무엇인가?MVC 모델이란 model, view, controller를 나타내는 말로써, 애플리케이션을 세 계층으로 나누어 개발하는 패턴이다. 📚 각각이 뭐하는 것이고 이렇게 하는 이유가 뭘까? 💡 ModelModel은 애플리케이션에서 데이터를 담당해 데이터베이스와의 상호작용을 하는 역할을 한다. 즉, 서비스 로직을 담당하는 곳이다. 💡 ViewView는 클라이언트를 구축하는 것으로서 사용자가 보는 화면(UI)을 담당한다. 💡 ControllerController는 사용자의 입력을 처리하고, 그 결과를 View에 전달하는 역할을 한다. 💡 사용하는 이유MVC로 애플리케이션을 분리하여 각각의 책임을 나눔으로써 코드가 더 명확해지고 이해하기 쉬워진다.유지보수성이 용이해지기 때..
🧑💻 이번 포스팅에서는 식별 관계와 비식별 관계에 대해 이야기해보고자 한다. ERD를 설계하면서 테이블 간의 관계를 설정하는데, 식별관계로 할지 비식별 관계로 할지를 선택하는 상황이 왔었다. 해당 관계에 대해 잘 알지 못하여 알아보게 되었다. 📚 식별 관계자식 테이블의 외래 키가 부모 테이블의 기본 키에 의존하는 관계이다. 다시 말하면, 자식 테이블은 부모 테이블이 존재해야만 생성이 가능하다는 것이다. 즉, 자식 테이블에서 부모 테이블을 참조할 때 사용하는 외래키(일반적으로 부모 테이블의 pk)는 Not Null이어야 한다. 💡 PK자식 테이블의 PK와 외래키인 부모 테이블의 PK를 혼합한 것이 자식 테이블의 PK가 된다. 💡 단점식별 관계에서는 부모 테이블의 데이터가 삭제되면 자식 테이블의..