logo

Spring Boot Arkitektur

Spring Boot er et modul i Spring Framework. Det bruges til at skabe selvstændige fjederbaserede applikationer i produktionskvalitet med minimal indsats. Det er udviklet oven på det centrale Spring Framework.

Spring Boot følger en lagdelt arkitektur, hvor hvert lag kommunikerer med laget direkte under eller over (hierarkisk struktur) det.

Før du forstår Spring Boot Arkitektur , skal vi kende de forskellige lag og klasser, der er til stede i den. Der er fire lag i Spring Boot er som følger:

    Præsentationslag Forretningslag Vedholdenhedslag Database lag
Spring Boot Arkitektur

Præsentationslag: Præsentationslaget håndterer HTTP-anmodningerne, oversætter JSON-parameteren til objekt og godkender anmodningen og overfører den til forretningslaget. Den består kort sagt af visninger dvs. frontend del.

Forretningslag: Forretningslaget håndterer alle forretningslogik . Den består af serviceklasser og bruger tjenester leveret af dataadgangslag. Den præsterer også bemyndigelse og validering .

Persistens lag: Persistenslaget indeholder alle lagringslogik og oversætter forretningsobjekter fra og til databaserækker.

Databaselag: I databaselaget, CRUD (opret, hent, opdater, slet) handlinger udføres.

Spring Boot Flow arkitektur

Spring Boot Arkitektur
  • Nu har vi validatorklasser, visningsklasser og hjælpeklasser.
  • Spring Boot bruger alle modulerne af Spring-lignende Spring MVC, Spring Data osv. Arkitekturen i Spring Boot er den samme som arkitekturen i Spring MVC, bortset fra én ting: der er ikke behov for KNIV og DAOImpl klasser i forårsstøvle.
  • Opretter et dataadgangslag og udfører CRUD-operation.
  • Klienten laver HTTP-anmodningerne (PUT eller GET).
  • Anmodningen går til controlleren, og controlleren kortlægger denne anmodning og håndterer den. Derefter kalder den servicelogikken, hvis det kræves.
  • I servicelaget udfører al forretningslogikken. Det udfører logikken på de data, der er afbildet til JPA med modelklasser.
  • En JSP-side returneres til brugeren, hvis der ikke opstod en fejl.