A simple backend application for managing job-related data, built with Spring Boot.
- 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
- Java
- Spring Boot
- Maven
- Java Development Kit (JDK) 8 or higher
- Maven
- Clone the repository:
git clone https://github.com/brlivsky/job-app.git
- Navigate to the project directory:
cd job-app
- Build the project:
mvn clean install
- Run the application:
mvn spring-boot:run
-
Companies:
GET /companies
: Retrieve all companiesGET /companies/{id}
: Retrieve a company by IDPOST /companies
: Create a new companyPUT /companies/{id}
: Update an existing companyDELETE /companies/{id}
: Delete a company
-
Jobs:
GET /jobs
: Retrieve all jobsGET /jobs/{id}
: Retrieve a job by IDPOST /jobs
: Create a new jobPUT /jobs/{id}
: Update an existing jobDELETE /jobs/{id}
: Delete a job
-
Reviews:
GET /companies/{companyId}/reviews
: Retrieve all reviews of a companyGET /companies/{companyId}/reviews/{reviewId}
: Retrieve a review of a companyPOST /companies/{companyId}/reviews
: Create a new review for a companyPUT /companies/{companyId}/reviews/{reviewId}
: Update an existing review of a companyDELETE /companies/{companyId}/reviews/{reviewId}
: Delete a review of a company
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
Contributions are welcome! Please fork the repository and create a pull request with your changes.
This project is licensed under the MIT License.