1. 스프링 시작하기 - eva-seulki/spring-in-action5 GitHub Wiki

Chapter 1. 스프링 시작하기

  • 로드 존슨이 << Expert One-on-One J2EE Design and Development >>(2002)에서 스프링을 처음 소개할 때와 지금은 많이 다름
  • 당시엔 RDBMS를 사용하는 웹 애플리케이션이 가장 많이 사용되었다면, 지금은 다양한 데이터베이스에 데이터를 저장하는 클라우드에 맞춰진 마이크로서비스나 리액티브 프로그래밍이 관심사임
  • 그에 따라 스프링 프레임워크도 진화했고, 간소화 된 Springboot도 생겼음

1.1 스프링이란?

  • 대부분의 애플리케이션은 각 기능을 담당하는 컴포넌트로 구성되어 이들 간에 협력을 통해 작업을 처리하므로 애플리케이션 실행 시 각 컴포넌트가 생성되고 서로 간에 알 수 있어야 함
  • 스프링에서는 이를 위해 Spring Application Context라는 Container가 애플리케이션 컴포넌트(Bean)을 생성하고 관리하며, DI를 통해 각 Bean들을 상호연결함
  • 컨테이너는 모든 컴포넌트를 생성/관리하고 해당 컴포넌트가 필요한 Bean에 주입하는데 이는 생성자인자 또는 속성의 접근자 메서드를 통해 처리 됨
  1. 생성자인자 방식
<bean id="productService" class="com.example.InventoryService">
   <constructor-arg ref="inventoryService/>
</bean>
  1. 접근자 메서드 방식
@Bean
public ProductService productService() {
   return new ProductService(inventoryService());
}
  • Java Configuration에서는 Autowiring과 Component Scanning라는 스프링기법을 통해 Auto-Configuration 기능을 제공함
  • Spring Boot에서 Auto-Configuration 기능이 더욱 향상 되었음

1.2 스프링 프로젝트 생성

https://github.com/eva-seulki/spring-in-action5/commit/eea684c849ac433394ecaf2de8e44ef5ea015f10

⚠️ **GitHub.com Fallback** ⚠️