📖 Scenario: You want to create a simple Spring Boot application that starts up and shows a welcome message on the home page. This is like opening a shop and putting a welcome sign on the door.
🎯 Goal: Build a minimal Spring Boot application that runs and displays "Welcome to Spring Boot!" on the home page.
📋 What You'll Learn
Create a Spring Boot main application class with the correct annotation
Add a configuration variable for the welcome message
Create a controller with a method to handle the home page request
Complete the application by running it with the Spring Boot run method
💡 Why This Matters
🌍 Real World
Spring Boot is widely used to build web applications and REST APIs quickly. Knowing how to run a basic app is the first step to creating real services.
💼 Career
Many Java developer jobs require knowledge of Spring Boot to build and maintain backend services. This project teaches the essential startup pattern.
Progress0 / 4 steps
1
Create the Spring Boot main application class
Create a class called DemoApplication in package com.example.demo. Add the @SpringBootApplication annotation and a main method that calls SpringApplication.run(DemoApplication.class, args).
Spring Boot
Hint
Use @SpringBootApplication on the class and a main method that calls SpringApplication.run.
2
Add a configuration variable for the welcome message
Inside the DemoApplication class, add a public static final String variable called WELCOME_MESSAGE and set it to "Welcome to Spring Boot!".
Spring Boot
Hint
Define a public static final String named WELCOME_MESSAGE with the exact text.
3
Create a controller to handle the home page request
Create a new class called HomeController in package com.example.demo. Add the @RestController annotation. Add a method called home that returns the DemoApplication.WELCOME_MESSAGE string. Annotate this method with @GetMapping("/").
Spring Boot
Hint
Use @RestController on the class and @GetMapping("/") on the method that returns the welcome message.
4
Run the Spring Boot application
Ensure the DemoApplication class has the main method that calls SpringApplication.run(DemoApplication.class, args). This method starts the application.
Spring Boot
Hint
The main method must call SpringApplication.run to start the app.
Practice
(1/5)
1. What is the main method used for in a Spring Boot application?
easy
A. To configure the database connection
B. To start the Spring Boot application using SpringApplication.run()
C. To define REST endpoints
D. To create HTML views
Solution
Step 1: Understand the role of the main method
The main method is the entry point of any Java application, including Spring Boot apps.
Step 2: Identify what SpringApplication.run() does
SpringApplication.run() starts the Spring Boot application by initializing the Spring context and components.
Final Answer:
To start the Spring Boot application using SpringApplication.run() -> Option B
Quick Check:
Main method starts app = To start the Spring Boot application using SpringApplication.run() [OK]
Hint: Main method always starts Spring Boot with SpringApplication.run() [OK]
Common Mistakes:
Confusing main method with configuration tasks
Thinking main method defines endpoints
Assuming main method creates UI views
2. Which of the following is the correct way to run a Spring Boot application from the command line using Maven?
easy
A. mvn spring-boot:run
B. mvn run spring-boot
C. mvn start boot
D. mvn execute springboot
Solution
Step 1: Recall Maven command for Spring Boot
The standard Maven command to run a Spring Boot app is 'mvn spring-boot:run'.
Step 2: Check other options for correctness
Other options do not follow Maven or Spring Boot plugin syntax and will cause errors.
Final Answer:
mvn spring-boot:run -> Option A
Quick Check:
Maven run command = mvn spring-boot:run [OK]
Hint: Use 'mvn spring-boot:run' to run Spring Boot apps with Maven [OK]
Common Mistakes:
Mixing up command order
Using invalid Maven goals
Typing incomplete commands
3. Given this main class, what happens when you run it?
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class MyApp {
public static void main(String[] args) {
SpringApplication.run(MyApp.class, args);
}
}
medium
A. The application starts and initializes Spring Boot context
B. The application throws a compilation error
C. The application runs but does not start Spring Boot
D. The application starts but immediately exits without running
Solution
Step 1: Analyze the main method code
The main method calls SpringApplication.run() with the class annotated by @SpringBootApplication.
Step 2: Understand @SpringBootApplication effect
This annotation enables auto-configuration and component scanning, so Spring Boot context starts properly.
Final Answer:
The application starts and initializes Spring Boot context -> Option A
Quick Check:
SpringApplication.run() starts app = The application starts and initializes Spring Boot context [OK]
Hint: SpringApplication.run() with @SpringBootApplication starts app [OK]
Common Mistakes:
Thinking @SpringBootApplication is optional
Assuming code throws error without extra config
Believing app runs but does not start Spring context
4. You try to run your Spring Boot app but get this error: java.lang.NoClassDefFoundError: org/springframework/boot/SpringApplication. What is the most likely cause?
medium
A. The Java version is too new for Spring Boot
B. The main method is missing in the application class
C. The Spring Boot dependency is missing from the project
D. The application.properties file is empty
Solution
Step 1: Understand the error meaning
NoClassDefFoundError means the JVM cannot find the SpringApplication class at runtime.
Step 2: Identify cause of missing class
This usually happens if the Spring Boot dependency is not included or not properly loaded in the project.
Final Answer:
The Spring Boot dependency is missing from the project -> Option C
Quick Check:
NoClassDefFoundError = missing dependency [OK]
Hint: NoClassDefFoundError usually means missing dependency [OK]
Common Mistakes:
Blaming missing main method for this error
Thinking empty config files cause class errors
Assuming Java version causes missing class
5. You want to run your Spring Boot app as a standalone jar. Which command correctly runs the jar file named app.jar?
medium
A. mvn run app.jar
B. java run app.jar
C. gradle run app.jar
D. java -jar app.jar
Solution
Step 1: Recall how to run a jar file in Java
The standard command to run an executable jar is 'java -jar filename.jar'.
Step 2: Check other options for correctness
The mvn and gradle commands are for build tools, not for running jar files directly. 'java run app.jar' is invalid Java command syntax.
Final Answer:
java -jar app.jar -> Option D
Quick Check:
Run jar with 'java -jar' = java -jar app.jar [OK]
Hint: Run jar files with 'java -jar filename.jar' [OK]
Common Mistakes:
Using build tool commands to run jar directly
Omitting '-jar' option
Typing invalid Java commands
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.