Skip to content

A simple job application backend to perform CRUD operations using spring boot.

Notifications You must be signed in to change notification settings

brlivsky/job-app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

JobApp

A simple backend application for managing job-related data, built with Spring Boot.

Features

  • CRUD Operations: Manage Companies, Jobs, and Reviews
  • Entity Relationships:
    • A Company can have multiple Jobs and Reviews
    • Jobs and Reviews are associated with a Company
  • RESTful Endpoints:
    • Retrieve Jobs by Job ID
    • Retrieve Reviews by Company ID
    • Retrieve Company details

Technologies Used

  • Java
  • Spring Boot
  • Maven

Getting Started

Prerequisites

  • Java Development Kit (JDK) 8 or higher
  • Maven

Installation

  1. Clone the repository:
git clone https://github.com/brlivsky/job-app.git
  1. Navigate to the project directory:
cd job-app
  1. Build the project:
mvn clean install
  1. Run the application:
mvn spring-boot:run

API Endpoints

  • Companies:

    • GET /companies: Retrieve all companies
    • GET /companies/{id}: Retrieve a company by ID
    • POST /companies: Create a new company
    • PUT /companies/{id}: Update an existing company
    • DELETE /companies/{id}: Delete a company
  • Jobs:

    • GET /jobs: Retrieve all jobs
    • GET /jobs/{id}: Retrieve a job by ID
    • POST /jobs: Create a new job
    • PUT /jobs/{id}: Update an existing job
    • DELETE /jobs/{id}: Delete a job
  • Reviews:

    • GET /companies/{companyId}/reviews: Retrieve all reviews of a company
    • GET /companies/{companyId}/reviews/{reviewId}: Retrieve a review of a company
    • POST /companies/{companyId}/reviews: Create a new review for a company
    • PUT /companies/{companyId}/reviews/{reviewId}: Update an existing review of a company
    • DELETE /companies/{companyId}/reviews/{reviewId}: Delete a review of a company

Project Structure

src
├───main
    ├───java
    │   └───com
    │       └───embarkx
    │           └───jobapp
    │               │   JobappApplication.java
    │               ├───company
    │               │   │   Company.java
    │               │   │   CompanyController.java
    │               │   │   CompanyRepository.java
    │               │   │   CompanyService.java
    │               │   └───impl
    │               │           CompanyServiceImpl.java     
    │               ├───job
    │               │   │   Job.java
    │               │   │   JobController.java
    │               │   │   JobRepository.java
    │               │   │   JobService.java 
    │               │   └───impl
    │               │           JobServiceImpl.java     
    │               └───review
    │                   │   Review.java
    │                   │   ReviewController.java
    │                   │   ReviewRepository.java
    │                   │   ReviewService.java
    │                   └───impl
    │                           ReviewServiceImpl.java                      
    └───resources
        │   application.properties

Contributing

Contributions are welcome! Please fork the repository and create a pull request with your changes.

License

This project is licensed under the MIT License.

About

A simple job application backend to perform CRUD operations using spring boot.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages