Spring Boot Intervjufrågor

Av Aaron Cao · Uppdaterad

Spring Boot Intervjufrågor
Förvänta dig frågor om autoconfiguration och starters, dependency injection och bean scopes, profiles och extern konfiguration, Spring Data JPA, REST-controllers och exception handling, testing slices, och Actuator. Senior-intervjuer lägger till transaktionsgränser, caching och hur en tjänst beter sig efter omstart.

Förvänta dig frågor om autoconfiguration och starters, dependency injection och bean scopes, profiles och extern konfiguration, Spring Data JPA, REST-controllers och exception handling, testing slices, och Actuator. Senior-intervjuer lägger till transaktionsgränser, caching och hur en tjänst beter sig efter omstart.

Vad frågar intervjuare om autoconfiguration och starters?

Du använder förmodligen Spring Boot varje dag utan att läsa dess startlogg, och intervjuare vet det, därför börjar de här. Det här avsnittet täcker frågor som testar om du förstår ramverket eller bara dess standardvärden.

  • Vad kombinerar @SpringBootApplication egentligen, och vad skulle gå sönder om du tog bort en del?
  • Hur bestämmer autoconfiguration vad som ska konfigureras, och vilken roll spelar conditional annotations?
  • Vad är en starter, och vad finns i den utöver dependencies?
  • Hur åsidosätter eller inaktiverar du en specifik autoconfiguration?
  • Var kommer en embedded server ifrån, och hur skulle du byta ut den?

Ett bra svar kopplar mekanismen till något du faktiskt gjort: en bean du var tvungen att exkludera, en starter du bytte ut, eller ett startfel du spårade genom condition evaluation report.

Vilka centrala frågor om container och data dyker upp?

  • Dependency injection. Constructor kontra field injection, varför constructor injection föredras, och hur du löser två kandidat-beans av samma typ.
  • Bean lifecycle och scopes. Varför singleton är standard, när request- eller prototype-scope är rätt, och vad som gör en singleton bean osäker att dela.
  • Konfiguration. Property-prioritet, profiles per miljö, och @ConfigurationProperties kontra utspridd value injection.
  • Spring Data JPA. Härledda query-metoder, N-plus-1-problemet, lazy kontra eager fetching, och när du bör gå ner till en native query.
  • Transaktioner. Vad @Transactional-proxyn faktiskt fångar upp, varför en self-invocation tyst hoppar över transaktionen, och hur rollback-regler fungerar med checked exceptions.

Frågan om transaktionsproxyn är den vanligaste platsen där ett självsäkert svar rasar samman, så var beredd att förklara proxygränsen istället för att bara nämna annotationen.

Hur pratar du om REST-design, testing och drift?

Bortom containern vill intervjuare se delarna som dyker upp i produktion. På webblagret: val av status code, validering, och centraliserad felhantering med @ControllerAdvice istället för try-catch i varje controller. Vid testing: skillnaden mellan en full @SpringBootTest och en slice som ett webblagertest, och varför det är en långsam vana att starta hela context för ett enda controller-test. På driftsidan: vad Actuator exponerar, vilka endpoints som inte får vara publika, och hur health checks matar en deployment.

Föreställ dig en backend-ingenjör som intervjuas för en mid-level roll på ett logistikföretag. Hon får frågan varför ett schemalagt job ibland skrev ofullständig data. Istället för att gissa går hon igenom transaktionsgränsen, noterar att jobbet anropade en transactional metod på sig själv, och förklarar proxy-beteendet som hoppade över det. Intervjuaren gick direkt vidare till ett erbjudandesamtal, eftersom svaret visade en debugging-vana snarare än en utantillinlärd definition.

Frågeset för andra språk och ramverk finns samlade under question banks.

Hur bör du öva, och var passar en live-assistent in?

Läs din egen tjänsts startlogg en gång och kunna berätta om den. Öva sedan högt, för glappet mellan att kunna ett koncept och att förklara det på fyrtio sekunder är det som avgör dessa intervjuer. En AI-intervjuare på sidan /mock-interview kan ställa följdfrågorna du inte skulle ställa till dig själv.

Under en talad videointervju transkriberar SubcueAI intervjuarens fråga och visar en föreslagen struktur på din sida, i skrivbordsoverlayen på macOS och Windows eller i sidopanelen för Chromium-webbläsartillägget. Ingen meeting bot ansluter till samtalet, och inget injiceras i mötessidan. Den ärliga gränsen är kodningsrundan: om den övergår till en skärmövervakad eller proctorad plattform är live-hjälp utanför räckhåll, och om du delar din skärm är allt på den synligt.

FAQ

Vad är skillnaden mellan Spring och Spring Boot?

Spring är det underliggande ramverket. Spring Boot lägger till opinionated autoconfiguration, starter dependencies, och en embedded server så att en tjänst kör utan externa konfigurationsfiler.

Varför föredras constructor injection?

Det gör dependencies explicita och obligatoriska, håller fields final, och låter dig bygga objektet i ett test utan container. Field injection döljer saknade dependencies fram till runtime.

Vad är N-plus-1-problemet?

Ett query laddar en lista, sedan utlöser varje element ett nytt query för sin association. Fixa det med en fetch join, en entity graph, eller batch fetching istället för att eager-ladda allt.

Vilka Actuator-endpoints är riskabla att exponera?

Allt som avslöjar konfiguration, environment, eller heap state. Exponera health och metrics via din monitoringväg och håll resten bakom autentisering eller helt avstängt.

Hur djupa blir Spring Boot-frågorna för senior-roller?

Senior-intervjuer rör sig från annotations till beteende: proxygränser, transaction propagation, caching-korrekthet, startprestanda, och hur tjänsten beter sig under en rolling restart.

Relaterade frågor

← Mer om Intervjufrågor efter roll & ämne