What are some commonly asked Java, Spring Boot, and MySQL interview questions?

For a 5-year experienced developer, interview preparation for Spring Boot and related technologies should focus on both core concepts and practical implementation. Below are key areas and example questions:

Java:

  • Explain the difference between HashMap and ConcurrentHashMap.
  • How does the JVM manage memory (Heap vs Stack)?
  • What are functional interfaces and how do you use Streams in Java 8?

Spring Boot:

  • What are Spring Boot starters and how do they simplify configuration?
  • How do you handle exception handling in REST APIs using @ControllerAdvice?
  • What’s the difference between @Component, @Service, and @Repository?
  • How do you implement security with Spring Security and JWT?

Hibernate & JPA:

  • Difference between Session and EntityManager.
  • What are the common fetch types and cascade types in JPA?
  • How do you handle lazy loading and N+1 query problems?

MySQL:

  • Explain normalization and indexing.
  • What’s the difference between INNER JOIN, LEFT JOIN, and RIGHT JOIN?
  • How do you optimize slow SQL queries?

Preparation Strategy:

  • Revise core Java fundamentals first.
  • Build a small Spring Boot REST project integrating Hibernate & MySQL.
  • Focus on real-world scenarios, debugging, and performance tuning.
  • Review Spring annotations and transaction management concepts.
  • Practice SQL queries, joins, and indexing strategies.

From my experience, interviewers for mid-level roles (around 5 years) go beyond theory. They’ll ask how you used Spring Boot, JPA, or MySQL to solve actual problems.

I’d recommend revisiting a project you’ve worked on and be ready to explain things like how you managed transactions, optimized queries, or handled exceptions with @ControllerAdvice.

I also practiced a lot of SQL joins and debugging lazy loading issues in Hibernate - those always come up!

You can also explore more Spring Boot interview questions and answers.

What worked for me was building a small CRUD app using Spring Boot + Hibernate + MySQL. It helped me revise @Entity, relationships (@OneToMany, @ManyToOne), and custom query methods in repositories.

For Java, I brushed up on concurrency and Streams - CompletableFuture and lambda expressions often pop up.

And for Spring Boot, I made sure I could explain dependency injection, bean scopes, and how auto-configuration works. Real confidence comes from coding those concepts, not just memorizing definitions.

At 5 years, most interviewers want to see how you think through issues. Be prepared to discuss things like handling N+1 problems in Hibernate, query optimization in MySQL, or debugging memory leaks in a Spring Boot app.

I once got a question about why my REST API was returning 500 - and they expected me to walk through how I’d use logs, exception handlers, and validation to trace it. That’s the level of depth they look for.