TOP 27 BEST SPRING BOOT INTERVIEW QUESTIONS & ANSWERS 2021

sparrow jack
sparrow jack March 11, 2021
Updated 2021/04/17 at 11:03 AM

Spring boot interview questions

Q1.What is Spring Boot?
Ans-
Spring Boot is a Spring module which provides RAD (Rapid Application Development) feature to Spring framework.
It is used to create stand alone spring based application that you can just run because it needs very little spring configuration.
Q2.How to create Spring Boot project using Spring Initializer?
Ans-
It is a web tool which is provided by Spring on official site. You can create Spring Boot project by providing project details.
TOP 27 BEST SPRING BOOT INTERVIEW QUESTIONS & ANSWERS 2021
Q3.What Is Spring Boot Actuator Used For?
Ans-
Essentially, Actuator brings Spring Boot applications to life by enabling production-ready features. These features allow us to monitor and manage applications when they’re running in production.
Integrating Spring Boot Actuator into a project is very simple. All we need to do is to include the spring-boot-starter-actuator starter in the pom.xml  file:
Q4.How to Deploy Spring Boot Web Applications as Jar and War Files?
Ans-
Traditionally, we package a web application as a WAR file, then deploy it into an external server. Doing this allows us to arrange multiple applications on the same server. During the time that CPU and memory were scarce, this was a great way to save resources.
However, things have changed. Computer hardware is fairly cheap now, and the attention has turned to server configuration. A small mistake in configuring the server during deployment may lead to catastrophic consequences.
Q5.How do you add Add a Servlet, Filter or Listener to an application?
Ans-
There are two ways to add Servlet, Filter, ServletContextListener and the other listeners supported by the Servlet spec to your application. You can either provide Spring beans for them or enable scanning for Servlet components.
Q6.How do you Write an XML REST service in spring boot?
Ans-
If you have the Jackson XML extension (Jackson-dataformat-XML) on the classpath, it will be used to render XML responses.
Q7.What is the default Multipart File Uploads size in spring boot?
Ans-
By default, Spring Boot configures Spring MVC with a maximum file of 1MB per file and a maximum of 10MB of file data in a single request.
Q8.How do you Enable HTTP response compression in spring boot?
Ans-
HTTP response compression is supported by Jetty, Tomcat, and Undertow. It can be enabled by adding in application.properties.
Q9.How do you Switch off the Spring Boot security configuration?
Ans-
If you define a @Configuration with @EnableWebSecurity anywhere in your application it will switch off the default web app security settings in Spring Boot.
Q10.How to execute Spring Batch jobs on startup?
Ans-
Spring Batch auto-configuration is enabled by adding @EnableBatchProcessing (from Spring Batch) somewhere in your context. By default, it executes all Jobs in the application context on startup.

Spring boot interview questions and answers for experienced

Q11.Does spring boot need Logging? What is the default one?
Ans-
Spring Boot has no mandatory logging dependency, except for the Commons Logging API.
Q12.How do you configure Configure Logback for logging?
Ans-
If you put a logback.xml in the root of your classpath it will be picked up from there.
Q13.How do you Configure Log4j for logging?
Ans-
Spring Boot supports Log4j 2 for logging configuration if it is on the classpath. If you are using the starters for assembling dependencies that means you have to exclude Logback and then include log4j 2 instead.
Q14.How do you write a JSON REST service in spring boot?
Ans-
Any Spring @RestController in a Spring Boot application should render JSON response by default as long as Jackson2 is on the classpath.
Q15.What are the advantages of spring Externalized Configuration?
Ans-
Externalize your configuration to work with the same application code in different environments. You can use properties files, YAML files, environment variables, and command-line arguments to externalize configuration.
Q16.How to write custom log configuration in spring boot?
Ans-
You can force Spring Boot to use a particular logging system using the org.springframework.boot.logging.LoggingSystem system property. The value should be the fully-qualified class name of a logging system implementation. You can also disable Spring Boot’s logging configuration entirely by using a value of none.
Q17.How do you customize Favicon in spring boot web application?
Ans-
Spring Boot looks for a favicon.ico in the configured static content locations and the root of the classpath (in that order). If such a file is present, it is automatically used as the favicon of the application.
Q18.How spring boot handle the error in the application?
Ans-
Spring Boot provides an /error mapping by default that handles all errors in a sensible way, and it is registered as a ‘global’ error page in the servlet container.
Q19.How do you Create a deployable war file in spring boot?
Ans-
Step 1: Extend SpringBootServletInitializer and override its configure method.
Step 2: Change packing type to war in pom.xml or in build.gradle.
Step 3: Mark the embedded servlet container dependency as provided.
Q20.What is Hot swapping in spring boot?
Ans-
Reloading the changes without restarting the server is called hot swapping, Modern IDEs (Eclipse, IDEA, etc.) all support hot swapping of bytecode,  so if you make a change that doesn’t affect the class or method signatures it should reload cleanly with no side effects.
Q21.What is spring-boot-dev tools?
Ans-
Applications that use spring-boot-devtools will automatically restart whenever files on the classpath change. This can be a useful feature when working in an IDE as it gives a very fast feedback loop for code changes.
Q22.What are Profiles in spring boot?
Ans-
Spring Profiles provide a way to segregate parts of your application configuration and make it only available in certain environments. Any @Component or @Configuration can be marked with @Profile to limit when it is loaded.
Q23.Spring Boot Actuator?
Ans-
Spring Boot Actuator help you monitor and manage your application health when you push it to production.
You can choose to manage and monitor your application by using HTTP endpoints.
Q24.How do you Change tomcat or jetty HTTP port?
Ans-
You can change the Tomcat HTTP port by changing default HTTP property in the application.properties file.
Q25.How to disable specific auto-configuration in spring boot?
Ans-
You can use exclude property as shown below to disable specific autoconfiguration.
@EnableAutoConfiguration(exclude={DataSourceAutoConfiguration.class})
Q26.What is LiveReload?
Ans-
The spring-boot-devtools module includes an embedded LiveReload server that can be used to trigger a browser refresh when a resource is changed. LiveReload browser extensions are freely available for Chrome, Firefox, and Safari.
Share this Article
Leave a comment

Leave a Reply

Your email address will not be published. Required fields are marked *