[JAVA] Rédaction de mémos de démarrage de printemps (2)

Objectif

Efficacité commerciale

Qu'est-ce qu'un conteneur DI (Dependency Injection)?

** En un mot, cela se traduit par "injecter une instance de l'extérieur, pas un programme" ** = "injecter des dépendances".

** Vous pouvez créer et utiliser une instance avec une fonction externe au lieu d'utiliser le nouvel opérateur ** pour créer une instance dans votre programme.

SpringBoot est conçu avec DI (Dependency Injection), qui peut réduire ** les dépendances de code **.

Les beans qui sont des instances de la classe sont stockés dans le conteneur DI.

Les appels entre les classes SpringBoot sont exécutés en acquérant les beans enregistrés dans le conteneur DI.

La méthode d'enregistrement standard du bean est la suivante.

  1. Ajoutez @ Bean``` à la méthode. Le singleton de la classe spécifiée dans la valeur de retour de la méthode est enregistré dans le conteneur DI.
  2. Ajoutez @ Component``` à la classe que vous souhaitez enregistrer comme bean. Une seule tonne de cette classe est enregistrée dans le conteneur DI
  3. L'enregistrement du Bean de la classe se fait simplement en ajoutant `@ RestController``` qui est une déclaration d'API et` @ Configurationt``` qui est une déclaration de classe d'environnement.

Au démarrage de SpringBoot, le conteneur DI lira les packages suivants spécifiés par @ComponentScan.

@SpringBootApplication
/* demo.service et démo.Du domaine et en dessous@Annotations pour l'enregistrement des composants et DI
Classes accordées/Enregistrez la méthode dans le conteneur DI en tant que bean.*/
@ComponentScan(
		scopedProxy = ScopedProxyMode.TARGET_CLASS,
		basePackages = {"demo.service","demo.domain"}
		)
public class SBDataBaseDemoApplication {
 
	public static void main(String[] args) {
		SpringApplication.run(SBDataBaseDemoApplication.class, args);
	}
}

Annotations principales pour DI

@controllerUtilisé pour la classe de couche contrôleur. @restcontrollerUtilisé pour les classes de couche de contrôleur webapi.@controllerQuand@responsebodyC'est une combinaison de. @serviceUtilisé pour les classes de couche de service. Principalement utilisé pour les classes qui exécutent la logique métier. @repositoryUtilisé pour les classes de couches de données. Principalement utilisé pour les classes qui accèdent à db. @componentEn plus de ce qui précède, il est utilisé pour di classes cibles.

image.png

référence

Points principaux du printemps

https://atuweb.net/201509_spring_framework_good_points/

Service Web RESTful créé avec Spring Boot

https://www.slideshare.net/WataruOhno/spring-fest-2018-spring-bootrestful-web-service https://terasolunaorg.github.io/guideline/5.0.1.RELEASE/ja/ArchitectureInDetail/REST.html

Recommended Posts

Rédaction de mémo de démarrage de printemps (1)
Rédaction de mémos de démarrage de printemps (2)
Mémo de méthode de contrôleur de démarrage à ressort
◆ Spring Boot + note de construction de l'environnement gradle
Un mémo qui a touché Spring Boot
Mémo rétrospective du printemps
Défi Spring Boot
Forme de botte de printemps
Spring Boot Rappelez-vous
gae + botte à ressort
Mémo de construction de l'environnement Spring Boot sur Mac
Spring Boot + Thymeleaf Boot Strap Méthode d'installation mémo
Mémo JJUG CCC Printemps 2018
Fiche d'apprentissage SPRING BOOT 01
Botte de printemps + Heroku Postgres
Notes d'utilisation de Spring Shell
Première botte à ressort (DI)
Fiche d'apprentissage SPRING BOOT 02
Aide-mémoire Spring Boot2
Gestion des exceptions Spring Boot
Mappage du servlet Spring Boot
Environnement de développement-développement Spring Boot-
Procédure d'apprentissage Spring Boot
Apprentissage de Spring Boot [Début]
Résumé du document Spring Boot 2.2
Remarques sur les annotations lors de l'écriture de tests pour Spring Boot
[Spring Boot] DataSourceProperties $ DataSourceBeanCreationException
Disponibilité de l'application Spring Boot 2.3
Tutoriels Spring Boot Sujets
Télécharger avec Spring Boot
Mémo d'utilisation de Spring Security: coopération avec Spring MVC et Boot
[Spring Boot] Construction de l'environnement (macOS)
Définir le paramètre contextuel dans Spring Boot
Essayez Spring Boot de 0 à 100.
Générer un code à barres avec Spring Boot
Hello World avec Spring Boot
Spring Boot sur Microsoft Azure
Implémenter GraphQL avec Spring Boot
Mémo d'utilisation de Spring Security CSRF
Série de mémos d'auto-apprentissage Spring Framework_1
Calendrier des tâches du didacticiel Spring Boot
Spring 5 et Spring Boot 2 Procédure de préparation pratique
Démarrez avec Spring Boot
Mémo d'utilisation de Spring Security Run-As
Bonjour tout le monde avec Spring Boot!
Multi-projets Spring Boot 2 avec Gradle
[Spring Boot] Création d'applications Web
Exécutez LIFF avec Spring Boot
Connexion SNS avec Spring Boot
Paramètres d'échange à chaud Spring Boot
[Java] Thymeleaf Basic (Spring Boot)
Introduction à Spring Boot ① ~ DI ~
Mémo d'utilisation de Spring Security Remember-Me
Téléchargement de fichiers avec Spring Boot
Spring Boot commençant par copie
Introduction à Spring Boot ② ~ AOP ~
Application Java CICS-Run - (4) Application Spring Boot
Spring Boot à partir de Docker
Spring Boot + Springfox springfox-boot-starter 3.0.0 Utilisation
Conseils relatifs à Spring Boot DB