Inleiding tot Spring Framework Interview Vragen en antwoorden

Spring Framework is een van de meest gebruikte Java-frameworks. De kernideeën van het voorjaarskader zijn "Afhankelijkheidsinjectie" en "Aspect-Oriented Programming". Spring framework wordt vaak gebruikt in traditionele Java-applicaties om los verband tussen volledig verschillende elementen te verkrijgen door afhankelijkheidsinjectie te implementeren en we zullen horizontale taken uitvoeren zoals werk en het gebruik van veerondersteuning voor aspect-georiënteerd programmeren. Omdat het een open-source framework is met veel online bronnen en actieve communityleden2, wat het tegelijkertijd eenvoudig en leuk maakt.

Hier is een uitgebreide lijst met vragen en antwoorden over het kader van het voorjaarskader 2019:

Als je nu op zoek bent naar een baan die gerelateerd is aan Spring Framework, moet je je voorbereiden op de sollicitatievragen voor Spring Framework 2019. Het is waar dat elk interview anders is volgens de verschillende functieprofielen, maar om het interview te wissen, moet je een goede en duidelijke kennis hebben van Spring Framework. Hier hebben we de belangrijke Spring Framework Interview-vragen en -antwoorden voorbereid die u zullen helpen succes te behalen in uw interview. Deze lijst met vragen bestaat uit twee delen die als volgt zijn:

  • Deel 1 - Interviewvragen voor Spring Framework (basis)
  • Deel 2 - Interviewvragen voor Spring Framework (geavanceerd)

Deel 1 - Interviewvragen voor Spring Framework (basis)

Dit eerste deel behandelt de basisvragen en antwoorden van het Spring framework

Q1.Wat zijn enkele van de belangrijke functies en voordelen van Spring Framework?

Antwoord:
Spring Framework is gebouwd op basis van 2 stijlideeën: afhankelijkheidsinjectie en op aspecten georiënteerd programmeren.
Enkele voordelen van het gebruik van Spring Framework zijn:

  • Het verminderen van directe afhankelijkheden tussen volledig verschillende elementen van het apparaat, meestal is Spring IoC-instrumentaliteit verantwoordelijk voor het initialiseren van bronnen of bonen en injecteert deze als afhankelijkheden.
  • Schrijfblokkoffers zijn eenvoudig in het Spring-raamwerk omdat onze bedrijfslogica geen directe afhankelijkheden heeft met de werkelijke categorieën voor resource-implementatie. we kunnen eenvoudig een kijkje nemen in de configuratie en onze mock beans injecteren voor testfuncties.
  • Vermindert de hoeveelheid ketelplaatcode, zoals het initialiseren van objecten, het openen / sluiten van bronnen. Ik geef de voorkeur aan hopen van de JdbcTemplate-categorie omdat het ons helpt bij het verwijderen van alle ketelplaatcode die bij JDBC-programmering wordt geleverd.
  • Spring framework is opgesplitst in veel modules, het helpt ons onze applicatie licht van gewicht te houden.
  • Spring framework ondersteunt de meeste Java EE-opties en zelfs nog meer. Het staat continu bovenaan de nieuwe technologieën, als voorbeeld is er een Spring-project voor Android om ons te helpen hogere code te schrijven voor native Android-applicaties. Dit maakt het veerraamwerk tot een compleet pakket en dat we niet gedwongen hoeven te worden om voor een heel ander raamwerk te zorgen voor verschillende benodigdheden.

Vraag 2. Wat verstaat u onder afhankelijkheidsinjectie?

Antwoord:
Afhankelijkheid Injectie stijl patroon stelt ons in staat om van de hard-gecodeerde afhankelijkheden af ​​te komen en onze applicatie losjes gekoppeld, uitbreidbaar en repareerbaar te maken. we zijn in staat om het afhankelijkheidspinspatroon te implementeren om de afhankelijkheidsresolutie van compilatie naar runtime te verplaatsen.
Enkele voordelen van het gebruik van afhankelijkheidsinjectie zijn Scheiding van problemen, Boilerplate-codevermindering, Configureerbare elementen en eenvoudige unit-testen.

Laten we doorgaan naar de volgende interviewvragen voor het kader van het voorjaar.

Q3.Wat zijn de voordelen van het gebruik van Spring Tool Suite?

Antwoord:
We kunnen plug-ins in Eclipse installeren om alle opties van Spring Tool Suite te gebruiken. Het wordt geleverd met de nodige dingen zoals deskundige ondersteuning, sjablonen voor het maken van verschillende soorten veer wordt geleverd met hogere prestaties bij veertoepassingen.
Ik hou van STS omdat het de Spring-elementen markeert en als je AOP-pointcuts en advies gebruikt, dan laat het duidelijk zien dat manieren kunnen terugkeren onder de precieze pointcut. daarom in plaats van alles zelf in te zetten, gebruik ik STS graag wanneer ik voornamelijk op lente gebaseerde applicaties ontwikkel.

Q4.Naam enkele belangrijke voorjaarsmodules?

Antwoord:
Dit zijn de gemeenschappelijke interviewvragen van Spring Framework die in een interview worden gesteld. Enkele van de noodzakelijke Spring Framework-modules zijn:

  • Spring Context - voor afhankelijkheid injectie.
  • Spring AOP - voor Aspect Oriented Programming.
  • Spring DAO - voor informatiebewerkingen met behulp van DAO-patroon
  • Spring JDBC - voor ondersteuning van JDBC en DataSource.
  • Spring ORM - voor ondersteuning van ORM-tools zoals Hibernate
  • Veernetmodule - voor het maken van nettoepassingen.
  • Spring MVC - Model-View-Controller implementatie voor het maken van net-applicaties, net-services etc.

Q5.Wat zijn aspecten van Aspect, Advice, Pointcut, JointPoint en Advice in AOP?

Antwoord:

Aspect : Aspect is een categorie die horizontale kwesties implementeert, zoals groepsactiebeheer. Aspecten zijn vaak een standaardcategorie die vervolgens wordt georganiseerd in het configuratiebestand van Spring Bean of we kunnen ondersteuning van Spring AspectJ gebruiken om een ​​categorie als Aspect aan te geven met behulp van @Aspect annotatie.

Advies : aanbeveling is dat de actie is ondernomen voor een specifiek onderdeel van het doel. In termen van programmeren, zijn ze manieren die doodgaan zodra een bepaald onderdeel van het doel met bijpassende pointcut binnen de applicatie wordt bereikt.

Pointcut : Pointcut is een standaarduitdrukking die gepaard gaat met een onderdeel van punten om te bepalen of een aanbeveling al dan niet dood moet zijn. Pointcut gebruikt volledig verschillende vormen van uitdrukkingen die zijn gekoppeld aan een onderdeel van punten. Spring framework maakt gebruik van de AspectJ pointcut-expressie taal om cruciaal te zijn om een ​​deel van punten te zijn waar aanbevelingsmethoden worden toegepast.

Verbindingspunt: een onderdeel van het doel is dat het specifieke doel van de toepassing, zoals de uitvoering van de techniek, het afhandelen van uitzonderingen, de steeds veranderende waarden van objectvariabelen, enz. In het voorjaar van AOP is een onderdeel van punten vaak de uitvoering van een techniek.

Adviesargumenten: we kunnen argumenten doorgeven binnen de aanbeveling. we kunnen de uitdrukking args () binnen de pointcut gebruiken voor elke techniek die overeenkomt met het argumentpatroon. Als we de neiging hebben dit te gebruiken, willen we de constante naam binnen de aanbevelingsmethode gebruiken, ongeacht waar het argumenttype is ingesteld.

Deel 2 - Interviewvragen voor Spring Framework (geavanceerd)

Laten we nu eens kijken naar de geavanceerde interviewvragen van Spring framework.

Q6.Wat is het verschil tussen Spring AOP en AspectJ AOP?

Antwoord:
AspectJ is dat de industriestandaard implementatie voor Aspect Oriented Programming, terwijl Spring AOP in enkele gevallen implementeert. De belangrijkste variaties tussen Spring AOP en AspectJ zijn:

  • Spring AOP is gemakkelijker te gebruiken dan AspectJ, omdat we ons meestal niet hoeven te dwingen om ons zorgen te maken over de weefmethode.
  • Spring AOP ondersteunt AspectJ-annotaties, dus als je bekend bent met AspectJ, is het werken met Spring AOP minder ingewikkeld.
  • Spring AOP ondersteunt alleen proxy-gebaseerde AOP, daarom wordt het vaak alleen toegepast op de uitvoering van de techniek als onderdeel van punten. AspectJ ondersteunt alle soorten pointcuts.
  • Een van de gebreken van Spring AOP is dat het vaak alleen wordt toegepast op de bonen die zijn gemaakt via Spring Context.

Q7.Wat is een voorjaarsboon?

Antwoord:
Elke traditionele Java-categorie die door Spring IoC is geïnitialiseerd, wordt Spring Bean genoemd. we hebben de neiging om Spring ApplicationContext te gebruiken om de Spring Bean-instantie aan te sporen.
Spring IoC beheert de levenscyclus van Spring Bean, bean scopes en injecteert alle benodigde afhankelijkheden in de bean.

Laten we doorgaan naar de volgende interviewvragen voor het kader van het voorjaar.

Q8). Wat zijn de verschillende scopes van Spring Bean?

Antwoord:
Er zijn 5 scopes voor Spring Beans.

  1. singleton : er wordt slechts 1 exemplaar van de bean gemaakt voor elke instrumentaliteit. dit kan het standaardbereik voor de springbonen zijn. terwijl u met deze scope ervoor zorgt dat spring bean geen gedeelde instantievariabelen heeft, anders zou het informatie-inconsistentieproblemen veroorzaken omdat het niet thread-safe is.
  2. prototype : er wordt een vervangend exemplaar gemaakt telkens wanneer de bean wordt gevraagd.
  3. verzoek : dit kan hetzelfde zijn als de paradigmabereik, maar het is bedoeld om te worden gebruikt voor netto-applicaties. er wordt een vervangend exemplaar van de bean gemaakt voor elk HTTP-verzoek.
  4. sessie : voor elke HTTP-sessie wordt door de functionaliteit een vervangende bean gemaakt.
  5. internationale sessie: dit kan worden gebruikt om wereldwijde sessiebonen te produceren voor Portlet-toepassingen.

Spring Framework is uitbreidbaar en we zullen ook onze eigen scopes produceren, maar meestal zijn we verstandig met de scopes van het framework.

Om spring bean scopes in te stellen kunnen we het "scope" attribuut in het bean gedeelte of @Scope annotation gebruiken voor annotatie op basis van configuraties.

Om spring bean scopes in te stellen kunnen we het "scope" attribuut in bean element of @Scope annotation gebruiken voor op annotatie gebaseerde configuraties.

Q9. Wat is de Spring Bean-levenscyclus?

Antwoord:
Dit zijn de veelgestelde interviewvragen in het kader van Spring in een interview. Spring Beans worden geïnitialiseerd door Spring-instrumentaliteit en iedereen de afhankelijkheden worden geïnjecteerd. zodra een context is vernietigd, vernietigt het bovendien alle geïnitialiseerde bonen. Dit werkt in de meeste gevallen goed, maar meestal willen we alternatieve bronnen initialiseren of wat validatie uitvoeren voordat we onze bonen kunnen gebruiken. Spring framework biedt ondersteuning voor post-initialisatie en pre-destroy manieren in springbonen.
We kunnen dat op twee manieren doen: door InitializingBean- en DisposableBean-interfaces te implementeren of door het kenmerk init-method en destroy-method te gebruiken in spring bean-configuraties.

Q10. Biedt Spring Bean draadveiligheid?

Antwoord:
Het standaardbereik van Spring bean is een singleton, daarom is er slechts 1 exemplaar per context. wat betekent dat iedereen die een variabele op categorieniveau heeft die door een thread wordt bijgewerkt, inconsistente informatie kan veroorzaken. dus in de standaardmodus lijken springbonen niet draadveilig.
We zijn echter in staat om de spring bean-scope aan te passen om te vragen, een paradigma of een sessie te maken om thread-safety te bereiken ten koste van de prestaties. Het is een ontwerpbeslissing en ondersteunde de projectbehoeften.

Aanbevolen artikel

Dit is een leidraad geweest voor de lijst met vragen en antwoorden over het Spring Framework-interview, zodat de kandidaat deze Spring Framework-interviewvragen gemakkelijk kan beantwoorden. Hier in dit bericht hebben we top Spring Framework Interview-vragen onderzocht die vaak worden gesteld in interviews. U kunt ook de volgende artikelen bekijken voor meer informatie -

  1. Vragen tijdens solliciteren bij Spring Boot
  2. Vragen tijdens solliciteren bij J2EE
  3. Vragen tijdens solliciteren bij PHP OOP
  4. Vragen tijdens een interview met Typescript
  5. Spring vs Hibernate: Wat zijn de verschillen
  6. Spring vs Struts: Features