Skip to content

A simple Java Spring Boot RESTful API for managing student records. Built with a layered architecture using Spring MVC, JPA, and MySQL for efficient data management. Ideal for learning and small-scale applications.

Notifications You must be signed in to change notification settings

xreedev/SchoolSystem

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 

Repository files navigation

SchoolSystem API

A simplified and scalable school management system built using Java Spring Boot.

Table of Contents

Introduction

SchoolSystem is a RESTful API designed for managing student information. It allows users to add, update, retrieve, and delete student records. The system follows a layered architecture (Controller, Service, Repository, and Model) to separate concerns and facilitate maintenance.

Technologies Used

Core Stack:

  • Java 11: The programming language used for this project.
  • Spring Boot: For building the RESTful API with the following modules:
    • Spring MVC
    • Spring Data JPA
    • Spring Web
  • Maven: For dependency management and project building.
  • MySQL: For database storage.
  • Lombok: To reduce boilerplate code for Java objects.

Technology Stack Spring Boot Maven

Project Architecture:

  • Controller: Handles HTTP requests.
  • Service: Contains business logic.
  • Repository: Manages database operations.
  • Model: Defines the data structure.

Project Structure

SchoolSystem
├───.idea                # IntelliJ configuration files
├───SchoolSystem         # Root directory of the project
│   └───src
│       └───main
│           └───java
│               └───com
│                   └───simplogics
│                       └───SchoolSystem
│                           ├───Configs         # Configuration files
│                           ├───Control         # REST controllers
│                           ├───Model           # Domain models (entities)
│                           ├───Repository      # Data access layer
│                           └───Service         # Business logic layer
└───pom.xml              # Maven configuration file

API Endpoints

  • POST /students - Add a new student
  • PUT /students - Update an existing student
  • GET /students/{id} - Retrieve a student by ID
  • GET /students - Retrieve all students
  • DELETE /students/{id} - Delete a student by ID

Example Request and Response:

POST /students

{
  "name": "John Doe",
  "age": 16,
  "grade": "10th"
}

Response:

{
  "id": 1,
  "name": "John Doe",
  "age": 16,
  "grade": "10th"
}

How to Run

  1. Clone the Repository:

    git clone https://github.com/xreedev/SchoolSystem.git
  2. Navigate to the Project Directory:

    cd SchoolSystem
  3. Build the Project:

    mvn clean install
  4. Run the Application:

    mvn spring-boot:run
  5. Access the API: Open Postman or your browser and interact with the API at http://localhost:8080/students.


About

A simple Java Spring Boot RESTful API for managing student records. Built with a layered architecture using Spring MVC, JPA, and MySQL for efficient data management. Ideal for learning and small-scale applications.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages