1. Scope 그리고 스프링의 기본 Scope, Singleton 앞선 장에서 설명드리지 않았으나 무척이나 중요한 역할을 하던 컴포넌트가 있습니다. 바로 배치가 실행될 때 Spring Bean을 생성하는 시점을 명시하는 @JobScope와 @StepScope 입니다. @Bean @StepScope public ListItemReader unPaidMemberReader() { log.info("********** This is unPaidMemberReader"); List activeMembers = memberRepository.findByStatusEquals(MemberStatus.ACTIVE); log.info(" - activeMember SIZE : " + activeMembers.size..
Spring 4 에서 새로 소개된 @Order 어노테이션은 같은 타입의 Bean이 Collection에 Autowired 될 때 순서를 지정하기 위해 사용합니다. 아무래도 인증이나 보안과 관련되어 가장 우선적으로 필터링할 클래스에 주로 사용합니다. 먼저 사용하기 위한 샘플 소스를 작성해보도록 하겠습니다. Work.java public interface Work { public void work(); } Programmer.java @Service @Order(value=1) public class Programmer implements Work { public void work() { System.out.println("Programmer Working..."); } } Designer.java @Ser..
기존에 자바 소스에서는 @Override, @Deprecated, @SuppressWarnings 의 형태로 사용했다. Spring Framework에서는 위의 기능들 말고 좀 더 효율적으로 개발을 하기 위해 '@'라는 단어를 앞에 붙여 사용하고 있다. @: at이라고도 읽지만 Spring 내에서는 Annotation(어노테이션, 애노테이션이라고도 함)으로 읽고 있다. 어노테이션은 스프링 프레임워크 3.0부터 본격적으로 사용되기 시작하였고, (현재는 5.2) 모든 어노테이션은 org.springframework 의 하위 패키지 클래스에 내장되어 있다. * build.gradle의 설정에 따라 각각 호출되는 어노테이션 명 및 기능이 다를 수도 있다. 또, 어노테이션은 각각의 레벨이 있고 그 레벨마다 호출되..