Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

UniTrainee – Traineeship Management Application

UniTrainee is a Spring Boot web application for managing university traineeship processes. The system supports different user roles, including students, companies, professors, and committee members, and provides role-based functionality for traineeship positions, applications, assignments, evaluations, and student logbooks.

Features

  • User authentication and role-based access
  • Student dashboard and profile management
  • Company dashboard and traineeship position management
  • Professor dashboard and evaluation functionality
  • Committee dashboard for application and assignment management
  • Traineeship position search and assignment logic
  • Thymeleaf-based server-side rendered views
  • MySQL database integration

Tech Stack

  • Java 21
  • Spring Boot 3.4.3
  • Spring MVC
  • Spring Security
  • Spring Data JPA
  • Thymeleaf
  • MySQL
  • Maven

Project Structure

src/main/java/gr/uoi/UniTrainee/uniTrainee
├── Config/          # Security configuration
├── controllers/     # MVC controllers
├── domainmodel/     # Domain entities and enums
├── factories/       # Factory classes for search and assignment strategies
├── mappers/         # Repository / mapper layer
├── services/        # Business logic
└── strategy/        # Strategy pattern implementations

Getting Started

Prerequisites

  • Java 21
  • Maven
  • MySQL

Database Setup

Create a MySQL database:

CREATE DATABASE unitrainee;

Configure the database connection using environment variables:

export DB_URL="jdbc:mysql://localhost:3306/unitrainee"
export DB_USERNAME="root"
export DB_PASSWORD="your_password"

On Windows PowerShell:

$env:DB_URL="jdbc:mysql://localhost:3306/unitrainee"
$env:DB_USERNAME="root"
$env:DB_PASSWORD="your_password"

Run the Application

Using Maven Wrapper:

./mvnw spring-boot:run

On Windows:

.\mvnw.cmd spring-boot:run

The application will run at:

http://localhost:8080

Notes

This project was developed as an academic Spring Boot application focused on traineeship management, applying MVC architecture, role-based access, database integration, service-layer design, and design patterns such as Strategy and Factory.

About

A Spring Boot web application for managing university traineeship applications.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages