반응형
CommandLineRunner이용 및 어플리케이션 구조
스프링부터에는 CommandLineRunner라는 인터페이스가 있다. 메인 App클래스가 CommandLineRunner인터페이스를 구현하면 DI 컨테이너가 App클래스에도 주입할 수 있게 된다.
@EnableAutoConfiguration
@ComponentScan
public class App implements CommandLineRunner {
@Autowired
ArgumentResolver argumentResolver;
@Autowired
Calculator calculator;
@Override
public void run(String... strings) throws Exception {
}
public static void main(String[] args) {
StrpingApplication.run(App.class, args);
}
}
스프링 프레임워크를 사용한 애플리케이션에서는 보통 각 레이어에 클래스를 만들고 DI컨테이너가 이 클래스들을 주입하도록 구성한다. 애플리케이션에서는 서비스 클래스가 엔티티(entity) 같은 도메인 객체의 컬렉션인 리포지토리 클래스를 사용하여 로직을 조합하며, 엔트리 포인트(웹 애플리케이션에서는 컨트롤러)가 사용자의 요청에 맞춰 서비스 클래스를 호출한다.
의존성 해결은 DI컨테이너에 맡긴다.
정형적인 스프링부트 패키지 모습.
반응형
'프로그래밍 > Spring' 카테고리의 다른 글
H2 파일 데이터베이스를 사용하도록 설정 (0) | 2019.04.17 |
---|---|
JdbcTemplate 사용 예제 (0) | 2019.04.17 |
@ComponentScan을 사용한 자동 Bean등록 (0) | 2019.04.16 |
스프링 프레임워크에서 셋터, 생성자로 주입 예제 (0) | 2019.04.16 |
@Data, Lombok 어노테이션 (0) | 2019.04.08 |