Enterprise Intermédiaire

Remplace les vastes définitions de beans XML de Spring par une configuration concise basée sur annotations avec Spring Boot.

✕ Spring (XML)
<!-- applicationContext.xml -->
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.springframework.org/schema/beans
        http://www.springframework.org/schema/beans/spring-beans.xsd">

    <bean id="userRepository"
          class="com.example.UserRepository">
        <property name="dataSource" ref="dataSource"/>
    </bean>

    <bean id="userService"
          class="com.example.UserService">
        <property name="repository" ref="userRepository"/>
    </bean>

</beans>
✓ Spring Boot 3+
@SpringBootApplication
public class Application {
    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }
}

@Repository
public class UserRepository {
    private final JdbcTemplate jdbc;

    public UserRepository(JdbcTemplate jdbc) {
        this.jdbc = jdbc;
    }
}

@Service
public class UserService {
    private final UserRepository repository;

    public UserService(UserRepository repository) {
        this.repository = repository;
    }
}
Un problème avec ce code ? Dites-le nous.
🚫

Sans XML

@SpringBootApplication active le scan de composants et l'auto-configuration, éliminant tous les fichiers de câblage XML.

💉

Injection par constructeur

Spring injecte les dépendances via les constructeurs automatiquement, rendant les beans plus faciles à tester.

Auto-configuration

Spring Boot configure DataSource, JPA et autre infrastructure depuis le classpath sans code répétitif.

Ancienne Approche
Définitions de beans en XML
Approche Moderne
Beans basés sur annotations
Depuis JDK
17
Difficulté
Intermédiaire
Configuration XML de Spring vs basée sur annotations
Disponible

Disponible depuis Spring Boot 1.0 (avril 2014) ; Spring Boot 3 nécessite Java 17+

Les applications Spring traditionnelles câblaient les beans via des fichiers de configuration XML, déclarant chaque classe et ses dépendances comme des éléments <bean> verbeux. Bien que le support des annotations existait depuis Spring 2.5, le XML est resté l'approche dominante jusqu'à ce que Spring Boot introduise l'auto-configuration. Spring Boot détecte les beans annotés avec @Component, @Service, @Repository et @Controller via le scan du classpath, satisfait les dépendances via l'injection par constructeur automatiquement et configure l'infrastructure comme DataSource depuis le classpath — éliminant tous les fichiers de câblage XML.

Partager 𝕏 🦋 in