Spring Boot Tutorial

Spring Boot Tutorial for Absolute Beginners

Spring Boot is an open-source framework designed to simplify the bootstrapping and development of Spring applications. In this blog post, we’ll walk you through setting up a simple Spring Boot project. This tutorial is aimed at beginners, so no prior experience with Spring Boot is necessary. Let’s get started with Spring Boot Tutorial.

Spring Boot Tutorial
Spring Boot Tutorial

Step 1: Installing the Prerequisites

Before you can start working with Spring Boot, make sure you have the following installed on your system:

  • Java Development Kit (JDK): You need JDK 8 or later to run Spring Boot. You can download it from the official Oracle website.
  • Apache Maven: This is a powerful project management tool that we’ll use to manage our project’s dependencies. Download it from the official Apache Maven site.
  • An IDE: While you can technically write Java in any text editor, an Integrated Development Environment (IDE) like IntelliJ IDEA or Eclipse will make your life much easier.

Once you’ve installed these prerequisites, you’re ready to start your Spring Boot journey!

Step 2: Creating a New Spring Boot Project

Spring Initializr is a great tool for generating a Spring Boot project structure. Here’s how to use it:

  1. Open Spring Initializr in your web browser.
  2. Choose Maven Project as the project type.
  3. Select the language (for this Spring Boot Tutorial, we’ll use Java).
  4. Fill in the Group and Artifact fields to identify your project. The group typically corresponds to your organization or personal domain, while the artifact is your project’s name.
  5. Choose the Spring Boot version. It’s usually best to go with the default provided (the latest stable version).
  6. In the Dependencies section, add Spring Web. This will allow us to build a simple web application.

Finally, click Generate to download your project as a zip file. Extract this file in your workspace.

Spring Boot Tutorial
Spring Boot Tutorial

Step 3: Exploring Your Spring Boot Project

Open the project in your IDE. You’ll see that Spring Initializr has created a project structure for you: Spring Boot Tutorial

myproject
|-- src
|   |-- main
|   |   |-- java
|   |   |   |-- com
|   |   |   |   |-- example
|   |   |   |   |   |-- myproject
|   |   |   |   |   |   |-- MyprojectApplication.java
|   |-- test
|   |   |-- java
|   |   |   |-- com
|   |   |   |   |-- example
|   |   |   |   |   |-- myproject
|   |   |   |   |   |   |-- MyprojectApplicationTests.java
|-- pom.xml

The pom.xml file is where Maven keeps track of your project’s dependencies. Here’s what it looks like: Spring Boot Tutorial

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.5.5</version>


    <relativePath/> <!-- lookup parent from repository -->
  </parent>
  <groupId>com.example</groupId>
  <artifactId>myproject</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <name>myproject</name>
  <description>Demo project for Spring Boot</description>
  <properties>
    <java.version>1.8</java.version>
  </properties>
  <dependencies>
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-test</artifactId>
      <scope>test</scope>
    </dependency>
  </dependencies>
  <build>
    <plugins>
      <plugin>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-maven-plugin</artifactId>
      </plugin>
    </plugins>
  </build>
</project>

In the src/main/java/com/example/myproject directory, you’ll find MyprojectApplication.java. This is the entry point to your application.

package com.example.myproject;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class MyprojectApplication {

    public static void main(String[] args) {
        SpringApplication.run(MyprojectApplication.class, args);
    }
}

The @SpringBootApplication annotation tells Spring Boot that this is a Spring Boot application.

Step 4: Running Your Spring Boot Application

Spring Boot Tutorial

To run your application, navigate to your project directory in the terminal and run:

./mvnw spring-boot:run

Your Spring Boot application is now running! By default, it will start on port 8080.

Congratulations! You’ve just created and run your first Spring Boot application. In future tutorials, we’ll delve into more specific topics, like creating RESTful APIs, connecting to databases, and more. Stay tuned, and happy coding!

Step 5: Creating Your First API Endpoint

Now that you have your Spring Boot application running, let’s create a simple API endpoint. An API endpoint is a specific URL where your application receives and responds to requests.

Let’s create a simple “Hello World” endpoint:

  1. First, create a new Java class in the same package as MyprojectApplication.java. We’ll call it HelloController.java. Your project structure should look like this:
myproject
|-- src
|   |-- main
|   |   |-- java
|   |   |   |-- com
|   |   |   |   |-- example
|   |   |   |   |   |-- myproject
|   |   |   |   |   |   |-- MyprojectApplication.java
|   |   |   |   |   |   |-- HelloController.java
  1. Open HelloController.java and add the following code:
package com.example.myproject;

import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class HelloController {

    @GetMapping("/hello")
    public String sayHello() {
        return "Hello, World!";
    }
}

Here, the @RestController annotation tells Spring Boot that this class will handle web requests. The @GetMapping("/hello") annotation specifies that this method will respond to GET requests at the /hello URL. When called, it returns the string “Hello, World!”.

  1. Save your changes and restart your Spring Boot application:
./mvnw spring-boot:run
  1. Open your web browser and navigate to http://localhost:8080/hello. You should see “Hello, World!” displayed on the page.

Congratulations! You’ve created your first API endpoint with Spring Boot.

Wrapping Up: Spring Boot Tutorial

In this tutorial, we’ve introduced you to Spring Boot and shown you how to create a basic project structure and your first API endpoint. As you can see, Spring Boot makes it easy to get started with Spring and develop web applications.

In future posts, we’ll explore more complex topics, like database integration, authentication, and testing. Until then, keep exploring, keep learning, and enjoy your journey into the world of Spring Boot!

Dive into this insightful post on CodingReflex to unlock the power of Quarkus, Java’s revolutionary framework for building ultra-speed applications.

  • For real-time updates and insights, follow our tech enthusiast and expert, Maulik, on Twitter.
  • Explore a universe of knowledge, innovation, and growth on our homepage, your one-stop resource for everything tech-related.

For more information on related topics, check out the following articles: