Skip to content

A RESTful API service to manage the exam enrollment process for a Learning Management System

Notifications You must be signed in to change notification settings

pgprajwal/Learning-Navigator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Overview

A RESTful API service built using Spring Boot to manage the exam enrollment process for a Learning Management System (LMS). The application uses MySQL to persist user data.

Features

  • CRUD Operations: Perform Create, Read, Update and Delete operations for Students, Subjects and Exams.
  • Enrollment Logic: Ensure students can only register for exams after enrolling in corresponding subjects.
  • Exception Handling: Gracefully handle errors and return appropriate HTTP status codes.
  • GlobalExceptionHandler: Centralized exception handling using @ControllerAdvice for improved code maintainability.

Getting Started

Prerequisites

  • Java 17 or higher
  • MySQL
  • Postman for API testing

Installation

  1. Clone the repository:

    git clone https://github.com/pgprajwal/Learning-Navigator.git
  2. Navigate to the project directory:

    cd Learning-Navigator

Configuration

  1. Open the application.properties file located in src/main/resources directory.

  2. Configure the MySQL database connection settings:

    spring.datasource.url = jdbc:mysql://localhost:3306/learning_navigator
    spring.datasource.username = root
    spring.datasource.password = password

    Replace localhost, 3306, root, and password with your MySQL host, port, username and password respectively.

  3. Save the changes to the application.properties file.

Running the Application

  • Run the application using Gradle:

    ./gradlew bootrun

API Endpoints

You can find the API endpoints and test them using the provided Postman Collection

About

A RESTful API service to manage the exam enrollment process for a Learning Management System

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages