목록스프링 5 프로그래밍 입문/5.컴포넌트 스캔 (5)
진취적 삶
스프링이 검색해서 빈으로 등록할수 있으려면 클래스에 @Component 을 붙여야한다 ChangePasswordService MemberDao MemberInfoPrinter MemberListPrinter MemberRegisterService Component 에 속성값 지정 안하는 경우 클래스 이름의 첫글자를 소문자로 바꾼 이름 속성값을 지정하는 경우 해당 속성값을 이름으로 사용하면 된다. @Component("listPrinter") public class MemberListPrinter { ....
@Configuration @ComponentScan(basePackages = {"spring"}) public class AppCtx { @Bean @Primary public MemberPrinter memberPrinter1() { return new MemberPrinter(); } @Bean public MemberPrinter memberPrinter2() { return new MemberSummaryPrinter(); } @Bean public VersionPrinter versionPrinter() { VersionPrinter versionPrinter = new VersionPrinter(); versionPrinter.setMajorVersion(5); versionPrinter...
private static void processVersionCommand() { VersionPrinter versionPrinter = ctx.getBean("versionPrinter",VersionPrinter.class); versionPrinter.print(); } private static void processListCommand() { MemberListPrinter listPrinter = ctx.getBean("listPrinter",MemberListPrinter.class); listPrinter.printAll(); } MemberRegisterService regSvc = ctx.getBean(MemberRegisterService.class); ChangePasswordSe..
정규표현식을 사용해서 제외 대상 지정 @ComponentScan(basePackages = {"spring"}, excludeFilters = @Filter(type=FilterType.REGEX,pattern = "spring\\..*Dao")) 5.4.1 기본 스캔 대상 @Component 를 붙인 클래스만 컴포넌트 스캔 대상에 포함되는것은 아니다 . @Component @Controller @Service @Repository @Aspect @Configureation