Enterprise Intermedio

Sostituisci le verbose definizioni di bean Spring XML con la configurazione annotation-driven concisa in 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;
    }
}
Vedi un problema con questo codice? Faccelo sapere.
🚫

Nessun XML

@SpringBootApplication attiva la scansione dei componenti e la auto-configurazione, eliminando tutti i file XML di cablaggio.

💉

Constructor injection

Spring inietta le dipendenze tramite costruttori automaticamente, rendendo i bean più facili da testare e ragionare.

Auto-configurazione

Spring Boot configura DataSource, JPA e altra infrastruttura dal classpath senza boilerplate.

Approccio Vecchio
Definizioni bean XML
Approccio Moderno
Bean annotation-driven
Dal JDK
17
Difficoltà
Intermedio
Configurazione Spring XML vs Annotation-Driven
Disponibile

Ampiamente disponibile da Spring Boot 1.0 (aprile 2014); Spring Boot 3 richiede Java 17+

Le applicazioni Spring tradizionali cablano i bean attraverso file di configurazione XML, dichiarando ogni classe e le sue dipendenze come elementi <bean> verbosi. Sebbene il supporto alle annotazioni esistesse da Spring 2.5, XML rimase l'approccio dominante finché Spring Boot non introdusse la auto-configurazione. Spring Boot rileva i bean annotati con @Component, @Service, @Repository e @Controller tramite la scansione del classpath, soddisfa le dipendenze tramite constructor injection automaticamente e configura l'infrastruttura come DataSource dal classpath — eliminando tutti i file XML di cablaggio.

Condividi 𝕏 🦋 in