Spring

    [Spring] ⌚ Quartz 라이브러리 Scheduling

    특정 시간 간격을 반복하거나 특정한 시각에 로직을 수행하는 것을 Scheduler라고 합니다. 이러한 작업을 위해 Spring에서는 2가지 옵션을 제공합니다. Spring Scheduler Spring Quartz 그 중 세밀한 제어가 가능한 Quartz Scheduler 라이브러리에 대해 알아봅시다. 기본 구성 Job 스케줄링할 실제 작업을 가지는 객체 - JobListener JobData Job에서 사용할 데이터를 전달하는 객체 JobDataMap 스케줄러에서 Job 실행 시 사용할 변수 값 전달 용도 (key-value 형식) JobDetail Job의 정보를 구성하는 객체 JobBuilder Job의 instances 정의하는 JobDetail instances 빌드에 사용 Trigger Job..

    [Spring] ↩️ @Transactional 왜 사용하는 거지?

    @Transactional 어노테이션 사용 이유와 사용 방법에 대해 알아보자 📌 @Transactional 사용 이유 한번에 수행되어야 하는 연산들을 처리할 때 그 중 하나가 오류가 난 경우 그 전에 실행되었던 SQL 쿼리들이 다 롤백되어야 하기에 *롤백(Rollback): 롤백은 작업 중 문제가 발생되어 트랜잭션의 처리과정에서 발생한 변경사항을 취소하는 명령어 어노테이션을 사용하는선언적 트랙잭션 (@Transactional) 클래스 레벨에 @Transactional 을 선언하면, 해당 클래스 내 모든 테스트 메서드에 트랜잭션이 적용되고, 각 테스트 메서드가 수행 완료된 후 롤백이 됨 메서드 레벨에 @Transactional 을 선언하면, 해당 테스트 메서드에 트랜잭션이 적용되어 수행 완료 후 롤백이 됨..

    [Spring] 🍃 왜 Spring 프레임워크를 사용하고 있는가?

    Java 프레임워크의 종류는 Hibernate, Struts, Play Framework, Apache Wicket, Spark, Spring 등이 있습니다. 그 중 Java를 다루는 개발자들 사이에서는 Spring이 유독 많이 사용되고 있습니다. 그렇다면 왜 우리는 Spring 프레임워크를 많이 사용할까요? Spring 프레임워크가 world's most popular 하기에? 📌 우선 Spring의 등장 배경에 대해서 알아봅시다. 2002년 로드 존슨에 의해 책이 출간됩니다. 그 내용 중 EJB의 문제점을 지적하고, EJB 없이도 충분히 고품질의 확장 가능한 애플리케이션을 개발할 수 있음을 보여주는 예제 코드가 있었습니다. 많은 개발자들이 책의 예제 코드를 프로젝트에 사용하게 되었고, 책으로만 전해지..