이 문서는 Google Cloud Translation API를 사용해 자동 번역되었습니다.
어떤 문서는 원문을 읽는게 나을 수도 있습니다.
Spring Boot 자동 구성은 애플리케이션 구성을 대폭 간소화할 수 있는 강력한 기능입니다. 이 게시물에서는 자동 구성이 작동하는 방식과 이를 사용하여 애플리케이션 개발을 간소화하는 방법에 대해 자세히 살펴보겠습니다.
Spring Boot 자동 구성은 클래스 경로에 특정 클래스가 있으면 트리거됩니다. Spring Boot가 이러한 클래스 중 하나를 감지하면 해당 유형의 빈을 자동으로 구성합니다. 예를 들어 Spring Boot가 클래스 경로에서 Hibernate를 감지하면 자동으로 Hibernate SessionFactory를 구성합니다.
자동 구성 프로세스를 사용자 지정하는 몇 가지 방법이 있습니다. 하나는 @Conditional 주석을 사용하여 특정 구성이 적용되어야 하는 조건을 지정하는 것입니다. 다른 하나는 @ConfigurationProperties 주석을 사용하여 속성 값을 빈 속성에 매핑하는 것입니다.
예를 들어 자동 구성을 사용하여 Spring Data JPA 리포지토리를 구성해 보겠습니다. 먼저 빌드에 spring-boot-starter-data-jpa, h2 및 mysql 종속성을 추가합니다.
다음으로 JpaRepository 클래스를 만듭니다.
@Repository
public interface MyRepository extends JpaRepository<User, Long> {
}
그런 다음 Application 클래스에 @EnableAutoConfiguration 주석을 추가하여 자동 구성을 활성화할 수 있습니다.
@SpringBootApplication
@EnableAutoConfiguration
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
마지막으로 애플리케이션 속성을 구성할 수 있습니다.
spring.datasource.url=jdbc:mysql://localhost:3306/test
spring.datasource.username=root
spring.datasource.password=password
spring.jpa.database=MYSQL
spring.jpa.show-sql=true
Spring Boot는 우리가 구성한 속성을 기반으로 DataSource 및 JpaRepository를 자동으로 구성합니다. 리포지토리를 서비스 클래스에 주입하고 이를 사용하여 데이터를 저장하고 검색할 수 있습니다.
@Service
public class MyService {
@Autowired
private MyRepository repository;
public void save(User user) {
repository.save(user);
}
public List<User> findAll() {
return repository.findAll();
}
}
자동 구성은 Spring Boot 애플리케이션을 개발할 때 엄청난 시간을 절약할 수 있습니다. 대부분의 경우 구성이 필요 없이 Just Work(tm)됩니다. 그렇지 않은 경우 구성은 일반적으로 간단합니다.