Spring Framework Tutorial for beginners #12

Coding Techniques
26 Jun 202412:49

Summary

TLDRCe tutoriel explique comment établir une relation entre les beans dans le contexte Spring à l'aide d'un appel de méthode direct. Il met en lumière la différence entre la programmation orientée objet et la gestion des relations par Spring, qui gère les objets et leur cycle de vie. Le guide crée une classe 'Library' et montre comment, via l'annotation @Autowired et des appels de méthodes, relie un bean 'Book' à un bean 'Library', en utilisant l'injection de dépendances pour tester la relation.

Takeaways

  • 📚 L'objectif de ce tutoriel est d'apprendre à utiliser la méthode directe d'appel pour lier des beans dans le contexte Spring.
  • 🔗 La relation entre les beans est établie en déléguant des responsabilités d'un objet à un autre dans la programmation orientée objet, mais Spring gère cela différemment.
  • 🌱 Les objets qui ne font pas partie du contexte Spring ne peuvent pas être gérés par celui-ci.
  • 📘 Le script crée une classe 'Library' pour établir une relation avec la classe 'Book'.
  • 📖 La classe 'Library' a un champ privé 'Book' pour représenter la relation simple entre une bibliothèque et un livre.
  • 🛠️ Les méthodes d'accès (getters et setters) sont générées pour la classe 'Library'.
  • ➕ Les annotations `@Autowired` sont utilisées pour ajouter 'Book' et 'Library' au contexte Spring.
  • 🔧 La relation entre 'Book' et 'Library' est implémentée par un appel de méthode direct lors de l'initialisation de 'Library'.
  • 📥 Le contexte Spring est initialisé avec les beans 'Book' et 'Library' à l'aide de la configuration dans 'AppConfig'.
  • 🔄 Pour vérifier la relation, le script utilise des appels de méthode pour obtenir des références aux beans et vérifier leur contenu.
  • 📝 L'exemple final vérifie que le 'Book' est bien présent dans la 'Library' et affiche les informations pour confirmation.

Q & A

  • Quel est le sujet principal de ce tutoriel vidéo ?

    -Le sujet principal de ce tutoriel est l'apprentissage de la mise en œuvre de relations entre les beans dans le contexte Spring à l'aide d'appels de méthodes directes.

  • Comment le Spring gère-t-il les relations entre les objets par rapport à la programmation orientée objet ?

    -Dans la programmation orientée objet, on établit une relation en déléguant des responsabilités d'un objet à un autre. Le Spring gère les relations différemment en gérant directement les objets et leur cycle de vie.

  • Pourquoi les objets en dehors du contexte Spring ne peuvent-ils pas être gérés par ce contexte ?

    -Les objets qui ne font pas partie du contexte Spring ne peuvent pas être gérés par lui car ils ne sont pas reconnus ou configurés dans l'environnement Spring.

  • Quel est le premier exemple de bean créé dans ce tutoriel ?

    -Le premier exemple de bean créé dans ce tutoriel est un objet 'Book'.

  • Quel est le deuxième bean créé et comment est-il lié au bean 'Book' ?

    -Le deuxième bean créé est un objet 'Library'. Il est lié au bean 'Book' en implémentant une relation où la bibliothèque contient un livre.

  • Comment ajouter les beans 'Book' et 'Library' au contexte Spring ?

    -Les beans 'Book' et 'Library' sont ajoutés au contexte Spring en utilisant l'annotation @Autowired et en définissant des méthodes pour chaque bean qui sont appelées lors de l'initialisation du contexte Spring.

  • Quelle est la différence entre l'injection de dépendances et l'appel de méthode directe mentionnée dans le script ?

    -L'injection de dépendances est une technique où le Spring injecte automatiquement les dépendances nécessaires dans les beans, tandis que l'appel de méthode directe est une technique où les relations entre les beans sont établies par des appels de méthode explicites dans le code.

  • Comment tester la relation entre 'Book' et 'Library' après l'avoir mise en place ?

    -On peut tester la relation entre 'Book' et 'Library' en récupérant les références de ces beans à partir du contexte Spring et en vérifiant si le livre est bien associé à la bibliothèque.

  • Quel est le but de surcharger la méthode 'toString' dans le bean 'Book' ?

    -Le but de surcharger la méthode 'toString' dans le bean 'Book' est de fournir une représentation textuelle du livre, notamment pour vérifier si le nom du livre est correctement associé à la bibliothèque lors des tests.

  • Quel est le prochain sujet abordé dans la série de tutoriels après celui-ci ?

    -Le prochain sujet abordé dans la série de tutoriels sera d'examiner d'autres façons d'établir des relations entre les beans, en se concentrant sur l'injection de dépendances.

Outlines

00:00

📚 Établir des relations entre les beans avec l'appel de méthode directe

Dans ce tutoriel, l'objectif est d'apprendre à établir des relations entre les beans dans le contexte Spring à l'aide d'appels de méthodes directes. On abordera la manière dont Spring gère les relations entre les objets, en soulignant que les objets en dehors du contexte Spring ne peuvent pas être gérés par celui-ci. Un exemple pratique est donné avec la création de deux beans, 'Book' et 'Library', où une relation est établie entre eux. Pour cela, on crée une classe 'Library' avec des méthodes 'get' et 'set' pour la propriété 'book'. On utilise l'annotation '@Bean' pour ajouter ces beans au contexte Spring, et on illustre comment l'injection de dépendances se fait via des appels de méthodes directes plutôt que par l'injection automatique.

05:02

🔗 Test de la relation entre 'Book' et 'Library' dans le contexte Spring

Le paragraphe explique comment tester et confirmer la relation établie entre les beans 'Book' et 'Library' dans le contexte Spring. On montre comment obtenir des références à ces beans à partir du contexte Spring à l'aide de la classe de configuration 'AppConfig'. On vérifie la relation en utilisant la méthode 'getTitle' sur le bean 'Book' et en comparant avec le titre attendu. L'objectif est de s'assurer que le 'Book' est bien associé à la 'Library' et que cette relation est correctement gérée par Spring, ce qui est confirmé par l'impression du nom de la 'Library' et du titre du 'Book' dans la console.

10:05

🚀 Conclusion sur l'implémentation des relations avec l'appel de méthode directe

Dans ce dernier paragraphe, on conclut sur la manière d'implémenter des relations entre les beans en utilisant l'appel de méthode directe dans Spring. On souligne que cette méthode est l'une des différentes approches pour établir des relations, et on mentionne brièvement que les prochains tutoriels exploreront d'autres méthodes telles que l'injection de dépendances. On insiste sur l'importance de sauvegarder tous les changements avant de lancer l'application et on confirme que l'application fonctionne comme prévu, avec l'exemple donné où le 'Book' est correctement associé à la 'Library'.

Mindmap

Keywords

💡méthode directe d'appel

La méthode directe d'appel est une technique utilisée dans le développement de logiciels pour établir une relation entre des objets. Dans le contexte de la vidéo, elle fait référence à la manière dont Spring, un framework de développement Java, permet d'établir une relation entre des beans (des objets gérés par Spring) en utilisant des appels de méthode direct. Cela est illustré par l'exemple de la relation entre un bean 'Book' et un bean 'Library'.

💡Spring context

Le Spring context est un concept central dans le framework Spring qui représente un conteneur pour les beans gérés par Spring. Il est responsable de la gestion de la vie des objets et de l'injection de dépendances. Dans la vidéo, l'ajout de beans au Spring context est une étape clé pour établir la relation entre eux.

💡bean

Dans le cadre de Spring, un bean est un objet qui est instancié, configuré et géré par le conteneur de l'application Spring. Les beans sont utilisés pour représenter les composants de l'application et leur relation. Dans l'exemple de la vidéo, 'Book' et 'Library' sont des beans qui entrent en relation l'un avec l'autre.

💡relation objet-objet

La relation objet-objet est un principe de la programmation orientée objet où un objet peut déléguer des responsabilités à un autre objet. Dans la vidéo, cela est mis en œuvre par le biais de la relation entre les beans 'Book' et 'Library', où la 'Library' contient un 'Book'.

💡dépendance

La dépendance fait référence à la relation où un composant ou un objet a besoin d'un autre pour fonctionner. Dans Spring, cela est géré par le conteneur Spring qui injecte les dépendances entre les beans. Dans le script, l'injection de dépendance est mentionnée comme une alternative à la méthode directe d'appel pour établir des relations.

💡injection de dépendances

L'injection de dépendances est une technique de programmation où les dépendances d'un objet sont fournies par un conteneur externes plutôt que d'être créées par l'objet lui-même. Dans la vidéo, bien que la méthode directe d'appel soit utilisée, l'injection de dépendances est également mentionnée comme une méthode pour établir des relations entre les beans.

💡configuration de Spring

La configuration de Spring est le processus de définition des beans et de leurs relations dans le conteneur Spring. Dans le script, la configuration est effectuée à travers une classe de configuration annotée avec @Configuration, qui définit les méthodes pour créer les beans 'Book' et 'Library'.

💡annotation

Les annotations sont un mécanisme de métadonnées utilisé par Spring pour marquer les classes ou les méthodes avec des informations de configuration. Dans la vidéo, les annotations comme @Bean et @Configuration sont utilisées pour marquer les méthodes qui créent les beans et la classe de configuration.

💡méthode de configuration

Une méthode de configuration est une méthode annotée avec @Bean qui est utilisée pour créer et retourner une instance de bean managée par Spring. Dans le script, les méthodes 'book()' et 'library()' sont des exemples de méthodes de configuration qui ajoutent les beans 'Book' et 'Library' au Spring context.

💡test de l'application

Tester l'application est une étape cruciale pour s'assurer que les fonctionnalités et les relations entre les beans fonctionnent comme prévu. Dans la vidéo, après avoir configuré les beans et établi leur relation, le script montre comment récupérer les références des beans à partir du contexte Spring et comment tester leur relation.

Highlights

Tutoriel sur l'utilisation de l'appel de méthode directe pour intégrer des beans dans Spring.

Introduction à la mise en relation de beans au sein du contexte Spring à l'aide de l'appel de méthode directe.

Explication de la différence entre la programmation orientée objet et la gestion des relations par Spring.

La nécessité pour les objets de faire partie du contexte Spring pour être gérés par celui-ci.

Création d'une classe Library pour établir une relation avec la classe Book.

Définition des attributs privés 'name' et 'book' dans la classe Library.

Ajout de méthodes d'accès (getters et setters) pour les attributs de la classe Library.

Inclusion de la classe Book et Library dans le contexte Spring à l'aide de l'annotation @Bean.

Utilisation de la méthode config pour définir et ajouter des beans à Spring context.

Mise en œuvre de la relation entre Book et Library via un appel de méthode direct.

Explication du processus d'injection de dépendances en utilisant l'annotation @Autowired.

Création d'une méthode pour tester et vérifier l'existence de la relation entre les beans.

Utilisation de la classe ApplicationContext pour obtenir des références aux beans.

Vérification de la relation entre Book et Library en utilisant les méthodes getBook et getName.

Modification de la méthode toString de la classe Book pour inclure le titre du livre.

Confirmation de la relation entre Book et Library à travers l'impression du nom de la bibliothèque et du livre.

Exemple de test de l'application pour valider la mise en œuvre de la relation.

Présentation des résultats de l'application montrant la relation entre la bibliothèque et le livre.

Aperçu des différentes méthodes pour établir des relations entre beans dans Spring au-delà de l'appel de méthode directe.

Transcripts

play00:00

hi in this tutorial you will learn

play00:03

wearing beans using direct method call

play00:06

in the previous tutorial we learn

play00:08

different ways of adding beans to Spring

play00:11

context this video focus on how we

play00:14

Implement relationship between being

play00:16

that are in the spring context using

play00:18

direct method call in object oriented

play00:22

programming we establish a relationship

play00:24

between object where an object delegate

play00:27

a responsibilities to other object

play00:30

but spring has its own way of

play00:33

establishing relationship since that it

play00:36

manages the object and the life cycle

play00:39

the object that are not part of the

play00:40

spring context cannot be managed by the

play00:43

spring context so now here we have a

play00:48

book so we need to create another beans

play00:53

that we will implement the relationship

play00:57

between the book and the other bin so

play01:02

let's create a

play01:04

bin

play01:07

here inside the package pins

play01:11

new

play01:14

class and call this

play01:19

Library

play01:24

so so the book and the library we will

play01:27

implement the relationship between the

play01:30

book and the library so let provide a

play01:34

file for this

play01:38

private

play01:40

string

play01:43

name and normally the library will have

play01:47

books so we need to Define

play01:52

private

play01:55

book

play01:57

book so here we did not

play02:00

have a list of books since that we know

play02:03

that the library contains a lot of book

play02:07

but for this example we will just

play02:09

provide a book for each Library so that

play02:13

they we will have the example for the

play02:16

implementing the relationship between

play02:18

these two okay so let's save let add the

play02:24

gets and sets

play02:30

generate Gators and set for

play02:34

this select all

play02:38

generate okay so here as you can see we

play02:43

have the library and the book so now

play02:47

what is remaining is to implement the

play02:50

relationship so as you can see here in

play02:54

this book the book and the library it

play02:58

has to be inside the spring context

play03:01

before implementing this relationship so

play03:05

now let add the book and the library to

play03:08

the spring context we will use Adin

play03:12

annotation okay so the first thing we

play03:16

will do let go to the app

play03:19

config that is configuration

play03:23

file so

play03:26

and have ad pin

play03:32

we Define the method

play03:35

public so now let Define a

play03:38

book and add the name and the title new

play03:48

book okay so at have

play03:51

book

play03:53

do set

play03:56

title let's see

play04:00

so we will return this

play04:04

book

play04:06

return

play04:09

book okay so now we finish with the book

play04:14

Now by adding the Adin annotation when

play04:18

the spring initialize it will call this

play04:21

method uh return these values to the

play04:25

spring context now it add it as a pin so

play04:29

let also have ad pin for the Library ad

play04:35

pin

play04:39

Public

play04:41

Library so now let's

play04:44

have

play04:46

library

play04:48

library and set the name and the

play04:53

book equal to

play04:56

new reary

play05:01

how we implement this relationship as we

play05:05

said that by direct method call so now

play05:09

when we

play05:10

call this

play05:14

Library

play05:15

do

play05:18

set book so now we will call this method

play05:24

so by calling this

play05:26

method we implement this relationship

play05:30

ship between the book and the library in

play05:35

the spring context and we will try this

play05:39

and test it you can see so let's call

play05:44

this method

play05:47

book I return the

play05:50

library let return the

play05:56

library okay so now that is is how we

play06:00

said

play06:01

that we implement the okay let go to the

play06:06

library and save the GS and the sets

play06:08

that we just added okay you see the

play06:11

arrow is gone this is why we said that

play06:14

we implement this relationship using

play06:16

direct method call this is one way of

play06:20

implementing the relationship in the

play06:23

spring using the direct method call okay

play06:26

now let go to the app the Java and

play06:30

get the reference to the book the

play06:32

reference to the

play06:34

library with the instance of the context

play06:39

you see we have the instance of the

play06:42

spring context that is using the app

play06:44

config class here okay so first what we

play06:49

will

play06:50

do let's have a

play06:55

library library

play06:59

equal to

play07:02

context do

play07:04

get bin so we get the reference using

play07:10

the type in the previous tutorial we

play07:13

learn how to get those

play07:15

references so we use type here um it is

play07:19

a

play07:20

library do

play07:24

class okay this is fine okay now let get

play07:30

also the reference to the book as well

play07:34

and we will test to see if we have this

play07:38

relationship okay

play07:42

book equal

play07:44

to

play07:46

context we will get the reference using

play07:50

the get

play07:53

pin book do

play07:58

class so so now we are getting these

play08:03

references using the type and the get

play08:07

pin method okay now to check to see if

play08:10

we have this relationship we will check

play08:15

this let have

play08:18

the system that out the print we

play08:21

duplicate

play08:26

this okay so for the live Library will

play08:30

say

play08:33

that

play08:38

Library so let call the name of the

play08:42

library

play08:44

plus

play08:47

Library do get

play08:50

name so to get the book of this Library

play08:56

let go back to the book here and

play08:58

overwrite the two string

play09:01

method add over

play09:06

right and we want it to return the name

play09:10

of the

play09:12

book

play09:14

so

play09:18

return and let's set the

play09:22

book

play09:24

name okay so this save this and

play09:30

go back to the app do Java and when we

play09:34

say

play09:37

it here we will just use the

play09:45

library do

play09:48

get

play09:50

book okay so here we will check if this

play09:54

book that we have here

play09:57

is inside the

play10:00

Library okay so to confirm this book

play10:04

name let check to see if it is

play10:11

added we will duplicate

play10:17

this okay we will check to see if this

play10:21

book is in the context and we will

play10:24

confirm the name using this line the

play10:28

library name

play10:29

and the book name okay so let's

play10:35

have let's set the

play10:42

book

play10:45

name okay so let's use the book

play10:52

do get

play10:55

title this is to confirm and to we will

play11:00

see the relationship here okay let's

play11:02

save the changes and for the app config

play11:07

will also save the changes make sure you

play11:11

save all the changes before running your

play11:16

application okay

play11:19

so let's run

play11:22

this

play11:24

application and

play11:26

see if our implementation works as

play11:31

expected okay you see the book that we

play11:35

have added to

play11:38

the spring context and here we have the

play11:42

name of the library and inside this

play11:46

Library we have a brief history of that

play11:49

I just printed this for the

play11:52

confirmation but here is what we

play11:55

have the library and the book so so this

play11:59

is how we implement the relationship

play12:04

okay let me just remove this

play12:11

on print this in the

play12:17

console okay you see we have the library

play12:19

and in the library we have a book name A

play12:24

Brief History of Time okay so this is

play12:27

how to implement relationship

play12:29

using direct method call that is wearing

play12:33

beIN using direct method call so in the

play12:36

next tutorial we will look at other ways

play12:39

that is dependency injection

Rate This

5.0 / 5 (0 votes)

Related Tags
SpringBeansRelationMéthodeAppel DirectContexteProgrammation Orientée ObjetGestion de Cycle de VieInjection de DépendanceTutorielJava
Do you need a summary in English?