Skip to content

AnkitGurungg/e-learning-platform

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

38 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

E-learning-platform


Table of Contents


Overview

E-learning platform is designed to facilitate the management and delivery of educational content. It provides key functionalities for managing authors, lectures, sections, course and resources, including files, videos, and text. The system is built to support an organized structure for educational courses, enabling easy access to various types of resources.


Features:

  • Author Management: Allows the creation and management of authors who can contribute educational content.
  • Lecture Management: Organizes lectures under specific courses.
  • Section Management: Courses are divided into sections for better navigation and progression.
  • Course Resources: Supports various types of course materials, including
    • Files: Attach supplementary resources.
    • Videos: Embed or link video content for lectures.
    • Text: Provide text-based resources for in-depth learning.

Diagrams

Database Class Diagram

Pic not found

Transform database table to java class

Pic not found

Difference between Hibernate and Spring Data JPA

Pic not found

Different types of generation strategies

Pic not found

Use JpaRepository to implement dao layer to interact with database and abstract data access layer from business logic

Pic not found

Hierarchy of JpaRepository

Pic not found

Hibernate Entity Lifecycle

Pic not found

Use inheritance on common field having entity classes by creating BaseEntity class to avoid code duplication

Pic not found

Use Embeddable and EmbeddedId to define composite primary key

Pic not found

Use Spring Data JPA to dynamically generate query generation or derived query at the run time

Pic not found

Install-PostgreSQL using docker

Pic not found

Install MySQL using docker

Pic not found


Technologies Used

  • Spring Boot 3
  • Spring Data JPA
  • Spring Validation
  • Docker
  • PostgreSQL
  • MySQL
  • Git & GitHub

Learning Objectives

  • Designing a class diagram from business requirements
  • Utilizing inheritance with Spring Data JPA
  • Object validation using Spring Validation
  • Using Spring Profiles for environment-specific configurations
  • Implementing business requirements and handling business exceptions

Get Started

To get started with the e-learning platform project, follow the given setup instructions respectively

  • Clone this repository.
  • Configure your database (PostgreSQL or MySQL) settings in the application properties.
  • Run the application using your preferred IDE or build tools.

Documentation

About

eLearning Platform for students

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages