Package me.josephsf.jobportaljosephsfeir.model


package me.josephsf.jobportaljosephsfeir.model
Provides model classes for the Job Portal application.

This package contains the domain model entities that represent the core business objects in the Job Portal system. These classes are mapped to MongoDB collections using Spring Data MongoDB annotations and are the foundation of the application's data structure.

The key entities in this package include:

  • User - Represents user accounts with authentication data
  • Role - Defines user roles and permissions
  • Candidate - Contains candidate profiles for job seekers
  • Recruiter - Contains recruiter profiles for employers
  • Job - Represents job postings with requirements and details
  • JobApplication - Tracks applications submitted by candidates
  • Experience - Represents work history entries for candidates
  • Education - Represents educational background entries for candidates

The model classes follow a consistent pattern with:

  • MongoDB document mapping annotations
  • Descriptive field definitions
  • Appropriate constructors
  • Complete getter and setter methods
  • Audit fields for creation and modification timestamps

The relationships between entities are represented through document references (typically by ID) following MongoDB best practices for document databases rather than traditional relational database foreign keys.

Since:
2025-05-15
  • Class
    Description
    Model class representing a job candidate's profile in the Job Portal system.
    Model class representing an educational record for a candidate in the Job Portal system.
    Model class representing a work experience entry for a candidate in the Job Portal system.
    Represents a job posting in the Job Portal application.
    Represents a job application submitted by a candidate for a specific job posting.
    Represents a recruiter profile in the Job Portal application.
    Enum representing the different user roles in the Job Portal system.
    Model class representing a user account in the Job Portal system.