Skip to main content

Java Spring Boot Tutorial

Introduction​

Spring Boot is an open-source Java framework used to create stand-alone, production-grade Spring applications with minimal configuration.

Prerequisites​

  • Basic knowledge of Java
  • JDK 17 or later installed
  • Maven or Gradle installed
  • An IDE like IntelliJ IDEA or Eclipse

Setting Up a Spring Boot Project​

  1. Go to Spring Initializr
  2. Select the following options:
    • Project: Maven or Gradle
    • Language: Java
    • Spring Boot Version: Latest stable version
    • Dependencies: Spring Web
  3. Click "Generate" to download the project.
  4. Extract the ZIP and open it in your IDE.

Creating a Simple REST API​

Step 1: Add Dependencies​

Ensure spring-boot-starter-web is included in your pom.xml:

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>

Step 2: Create a REST Controller​

Create a file HelloController.java in src/main/java/com/example/demo/controller:

package com.example.demo.controller;

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

@RestController
@RequestMapping("/api")
public class HelloController {

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

Step 3: Run the Application​

Run the following command in the terminal:

./mvnw spring-boot:run

Or if using Gradle:

./gradlew bootRun

Step 4: Test the API​

Open a browser or use curl:

curl http://localhost:8080/api/hello

You should see:

Hello, Spring Boot!

Conclusion​

You have successfully created a simple Spring Boot REST API. Explore additional features like database integration, security, and testing to build more robust applications.

Content Review​

The content in this repository has been reviewed by chevp. Chevp is dedicated to ensuring that the information provided is accurate, relevant, and up-to-date, helping users to learn and implement programming skills effectively.

About the Reviewer​

For more insights and contributions, visit chevp's GitHub profile: chevp's GitHub Profile.