Quali sono i diversi moduli della primavera?


Migliore risposta

La maggior parte delle risposte su Internet sono molto vaghe, quindi possono confondere un principiante.

La versione Spring a livello di settore è Spring 3.0, le modifiche rispetto alla versione precedente, ad esempio 2.5, sono costituite da (JDK 5 supportato): –

Spring MVC Test Framework – Elaborazione MVC asincrona su Servlet 3.0 – annotazioni di definizione @Bean personalizzate in @ Classi di configurazione – @Autowired e @Value da utilizzare come meta-annotazioni – Raffinamenti della concorrenza nel framework – Caricamento di WebApplicationContexts nel framework TestContext – JCache 0.5 (JSR-107)

Spring 2.X consisteva principalmente di 6 moduli, supportato JDK 4: –

  • Spring Core Module
  • Spring Context [J2EE]
  • Spring DAO Module [Spring JDBC]
  • Spring ORM module
  • Spring AOP [Aspect Oriented Programming]
  • Spring WEB-MVC Module

La precedente è diversa dalla versione precedente Spring 1.x con 7 moduli.

Risposta

Prima verifica alcuni fatti:

  • Sia Spring Framework che Spring Boot vengono utilizzati per creare applicazioni Java Enterprise.
  • Si potrebbe fare tutto utilizzando Spring Framework che può essere ottenuto da Spring Boot.

Allora perché Spring Boot ?

Per capirlo, è necessario comprendere la filosofia di progettazione alla base della creazione di Spring Boot. Se comprendi la filosofia / lobiettivo del design, allora conoscerai automaticamente la differenza tra questi.

Fornirò alcuni punti salienti di questi obiettivi di progettazione:

  1. Convenzione sulla configurazione È un paradigma di progettazione software utilizzato da molti framework / sistemi software che fornisce impostazioni predefinite ragionevoli al suo utente ovviamente seguendo il best practice e senza perdere flessibilità. Limpatto di questo principio di progettazione è profondo e questi include; buona architettura, manutenibilità, creazione di prodotti uniformi e standard, minor numero di decisioni per lutente, aumento della produttività complessiva, sviluppo più rapido, ecc. solo per citarne alcuni. Lidea è che il sistema / framework fornirebbe valori predefiniti ragionevoli per i propri utenti [per convenzione] e se uno devia / si discosta da questi valori predefiniti, solo uno deve apportare modifiche alla configurazione. Prendiamo alcuni Esempi : Esempio 1: (distribuzione Semplificato) Supponiamo che lutente stia creando unapplicazione web seguendo Spring MVC, allora è ovvio che lutente avrà bisogno di un contenitore come Tomcat per distribuire questa applicazione. Se il tuo framework può fornire Tomcat integrato, lutente non dovrà sprecare tempo e fatica nellinstallazione, configurando la propria istanza Tomcat. Se non si desidera questo comportamento predefinito, il framework dovrebbe avere flessibilità anche per questo. Lavora per te: cerca i vasi dipendenti di spring-boot-starter-web artifactId org.springframework.boot spring-boot-starter-web Fammi sapere, cosa hai trovato? 🙂 Esempio 2: (Gestione delle dipendenze semplificata) Se hai sviluppato la tua applicazione aziendale utilizzando Spring Framework (modo tradizionale), allora sicuramente conosci il problema di trovare jars giusti, versioni giuste di barattoli, aggiornamento della versione di barattoli e molti altri. E se, lutente può ottenere tutti i jar dipendenti insieme alle loro dipendenze transitive fuori dalla scatola semplicemente sottolineando che hanno bisogno di jar relativi al web, alla sicurezza o jpa ecc. Lavora per te : Dai unocchiata agli Spring Boot Starter Pack come spring-boot-starter-web, spring-boot-starter-Actuator ecc
  2. Sviluppo rapido di applicazioni Una frase, massimizzando il codice che effettivamente aggiunge valore o correlato al tuo dominio e riducendo il codice boilerplate. Prendiamo un esempio: il codice nella tua applicazione che esegue il marshalling di XML o JSON non ha valore per il cliente né ha un vantaggio per gli sviluppatori

Ora abbiamo discusso la filosofia di progettazione alla base della creazione di Spring Boot. Cosa fa effettivamente? In che modo aiuta?

  • Accelera lo sviluppo
  • Gli sviluppatori investono il loro tempo nella creazione di soluzioni che contano davvero e aggiungono valori piuttosto che sprecare ore [sia sforzi che tempo] per impostare migliorare lambiente di sviluppo, i progetti, apportare modifiche alla configurazione e scrivere codici boilerplate

Sperando di essere in grado di spiegare la differenza tra il framework Spring e Spring Boot dal punto di vista del design.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *