Auto Scanning 컴포넌트(@Component,@Repository,@Service,@Contoroller),
스프링프레임워크교육학원/Spring Framework AutoWired
스프링 컨테이너는 base-package의 클래스를 검색해서 자동으로 자바빈으로 등록하는 데 이에 해당하는 것이 @Component,
@Repository, @Service, @Contoroller 애노테이션이다.
자동스캔을 위해서는 <context:componet-scan base-package="onj.edu.spring" /> 과
같이
base-package를 기술하며 패키지가 여럿인 경우 콤마로 구분하여 기술한다.
base-package를 기술하며 패키지가 여럿인 경우 콤마로 구분하여 기술한다.
1. @Component : 일반적인 용도의 컴포넌트들을 표시하는 기본 스테레오 타입
멤버변수와 getter, setter만 가지고 있는 DTO 같은 컴포넌트
멤버변수와 getter, setter만 가지고 있는 DTO 같은 컴포넌트
//스프링 컨테이너에 의해 자동 스캔된다.
@Component("onj")
public class Onj {
privateString name="OnJ";
public String getName() {
return name;
}
}
@Component("onj")
public class Onj {
privateString name="OnJ";
public String getName() {
return name;
}
}
2. @Repository : 퍼시스턴스 레이어의 DAO컴포넌트
@Repository
public class SpringBoardDAO implements BoardDao{
}
public class SpringBoardDAO implements BoardDao{
}
3. @Service : 서비스 레이어의 서비스 컴포넌트
@Service
public class SpringBoardService implements BoardService{
public class SpringBoardService implements BoardService{
@Autowried
private SpringBoardDAO boardDAO;
}
private SpringBoardDAO boardDAO;
}
4. @Controller : 프리젠테이션 레이어의 컨트롤러 컴포넌트
@Controller
public class BoardMultiController {
@Autowired
private SpringBoardService springBoardService;
...
}
public class BoardMultiController {
@Autowired
private SpringBoardService springBoardService;
...
}
댓글 없음:
댓글 쓰기