Vous êtes sur la page 1sur 3

Spring

un bean est simplement un objet géré par le conteneur Spring.

IoC est un principe de conception il inverse le contrôle de la création et de la gestion des objets, déléguant cette
responsabilité au conteneur Spring.

l'injection de dépendances dans Spring. c’est injecter un objet dans un autre. L'injection de dépendances peut
être réalisée par l'annotation @Autowired, les constructeurs, ou les méthodes setters.

Un bean est un objet géré par le conteneur Spring, généralement configuré et géré par les annotations ou les
fichiers XML. Le cycle de vie d'un bean comprend l'initialisation, l'utilisation et la destruction, gérées par les
méthodes d'initialisation et de destruction.

@SpringBootApplication: Cette annotation est utilisée pour marquer la classe principale de l'application Spring
Boot. Elle combine @Configuration, @ComponentScan, et @EnableAutoConfiguration.

@Value: Cette annotation est utilisée pour injecter des valeurs à partir des propriétés de configuration de Spring
Boot ou d'autres sources.

@Bean: Cette annotation est utilisée pour indiquer à Spring Boot qu'une méthode produit un bean à ajouter au
contexte d'application.

@Conditional: Cette annotation est utilisée pour contrôler la configuration basée sur des conditions spécifiques.

@Profile: Cette annotation est utilisée pour activer des composants spécifiques basés sur le profil d'exécution de
l'application.

@ConfigurationProperties: Cette annotation est utilisée pour lier les propriétés de configuration externes à des
objets Java dans une application Spring Boot.

@RestControllerAdvice: Cette annotation est utilisée pour définir des conseils globaux pour les contrôleurs REST
dans une application Spring Boot.

@EnableAsync: Cette annotation est utilisée pour activer la prise en charge des méthodes asynchrones dans une
application Spring Boot.

@EnableScheduling: Cette annotation est utilisée pour activer la prise en charge de l'ordonnancement des tâches
dans une application Spring Boot.

@EnableWebSecurity: Cette annotation est utilisée pour activer la sécurité web dans une application Spring.

@PreAuthorize: Cette annotation est utilisée pour spécifier des autorisations au niveau de la méthode avant
l'exécution de celle-ci.

@PostAuthorize: Cette annotation est utilisée pour spécifier des autorisations au niveau de la méthode après son
exécution.

@Secured: Cette annotation est utilisée pour spécifier des autorisations au niveau de la méthode en utilisant des
expressions d'autorisation.
@RolesAllowed: Cette annotation est utilisée pour spécifier les rôles autorisés au niveau de la méthode.

@AuthenticationPrincipal: Cette annotation est utilisée pour injecter le principal actuellement authentifié dans un
contrôleur ou un service.

@EnableGlobalMethodSecurity: Cette annotation est utilisée pour activer la sécurité au niveau des méthodes
globalement, ce qui permet l'utilisation des annotations @PreAuthorize, @PostAuthorize, @Secured, etc.

@EnableGlobalAuthentication: Cette annotation est utilisée pour activer la configuration de l'authentification


globalement.

Transactions Spring propose un support pour les transactions déclaratives via des annotations (@Transactional) ou
la configuration XML.

Spring Boot Starter est une dépendance qui fournit un ensemble d'artefacts prêts à l'emploi pour faciliter le
démarrage d'une application Spring Boot.

le mécanisme de profilage Les profils permettent de définir des configurations spécifiques pour différents
environnements, tels que développement, test ou production.

Tests unitaires Spring Boot fournit des annotations telles que @SpringBootTest pour faciliter les tests
d'intégration et @MockBean pour les tests de mock.

Spring Boot Actuator fournit des fonctionnalités de surveillance et de gestion d'application, exposant des points de
terminaison pour obtenir des informations sur l'application.

Les exceptions peuvent être gérées via des classes d'exception personnalisées, des conseils (aspects), ou en
utilisant l'annotation @ExceptionHandler.

Thymeleaf est un moteur de templates utilisé dans les applications Spring Boot pour la création de vues web.

Spring Cloud est une extension de Spring Boot qui facilite le développement d'applications distribuées en
fournissant des solutions pour la configuration

AOP : Spring utilise AOP pour fournir des fonctionnalités telles que la gestion de la transaction, la sécurité, le
caching, etc., sans mélanger avec le code métier principal.

@Aspect@Component
public class LoggingAspect { @Before("execution(* com.example.service.AccountService.*(..))")
public void logBeforeAccountOperation() { System.out.println("Journalisation");}}

Les scopes de bean déterminent la durée de vie d'un bean dans Spring.singleton signifie qu'une seule instance est
créée par conteneur, prototype signifie qu'une nouvelle instance est créée à chaque demande, request signifie
qu'une instance est créée pour chaque requête HTTP

Les annotations JUnit vous aident à écrire des tests plus clairs sans répétitions inutiles.@BeforeEach emplacement
pour installer ou organiser un prérequis pour vos tests.@AfterEach Et pour nettoyer ou satisfaire à une
postcondition.@BeforeAll exemple pour installer d’autres variables statiques pour vos tests.@AfterAll pour
nettoyer les dépendances statiques.@Timeout Si vous testez une méthode qui ne doit pas être trop lente, vous
pouvez la forcer à échouer le test.

Vous aimerez peut-être aussi