Skip to content

"Academic Project: Volunteer Management System. Implementation covers JDBC database connectivity (MySQL), Multithreading and Synchronization demo, Custom Exception Handling, and full use of OOP principles (Inheritance, Polymorphism, Abstraction) "

Notifications You must be signed in to change notification settings

prashantsingh072/Volunteer-Management-System-Java-JDBC

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 

Repository files navigation

Volunteer-Management-System-Java-JDBC

"Academic Project: Volunteer Management System. Implementation covers JDBC database connectivity (MySQL), Multithreading and Synchronization demo, Custom Exception Handling, and full use of OOP principles (Inheritance, Polymorphism, Abstraction) " Setup Instructions-- Follow these steps to successfully set up and run the project:

  1. Database Setup (MySQL) Execute these SQL commands in your MySQL Workbench or command line to create the necessary database and tables: -- 1. Create the database CREATE DATABASE IF NOT EXISTS volunteer_db;

-- 2. Use the database USE volunteer_db;

-- 3. Create the tables CREATE TABLE IF NOT EXISTS volunteers ( id INT PRIMARY KEY AUTO_INCREMENT, name VARCHAR(100) NOT NULL, email VARCHAR(100) UNIQUE NOT NULL, skills VARCHAR(255), is_available BOOLEAN NOT NULL DEFAULT TRUE );

CREATE TABLE IF NOT EXISTS projects ( id INT PRIMARY KEY AUTO_INCREMENT, title VARCHAR(100) NOT NULL, required_skills VARCHAR(255) );

CREATE TABLE IF NOT EXISTS project_assignments ( volunteer_id INT NOT NULL, project_id INT NOT NULL, assigned_date DATE NOT NULL DEFAULT (CURRENT_DATE()), PRIMARY KEY (volunteer_id, project_id), FOREIGN KEY (volunteer_id) REFERENCES volunteers(id), FOREIGN KEY (project_id) REFERENCES projects(id) );

System Requirements To run this project, you will need the following: Java Development Kit (JDK) 8+ MySQL Server (8.0+) MySQL Connector/J JAR file

Create the database-- CREATE DATABASE IF NOT EXISTS volunteer_db;

-- 2. Use the database USE volunteer_db;

-- 3. Create the tables CREATE TABLE IF NOT EXISTS volunteers ( id INT PRIMARY KEY AUTO_INCREMENT, name VARCHAR(100) NOT NULL, email VARCHAR(100) UNIQUE NOT NULL, skills VARCHAR(255), is_available BOOLEAN NOT NULL DEFAULT TRUE );

CREATE TABLE IF NOT EXISTS projects ( id INT PRIMARY KEY AUTO_INCREMENT, title VARCHAR(100) NOT NULL, required_skills VARCHAR(255) );

CREATE TABLE IF NOT EXISTS project_assignments ( volunteer_id INT NOT NULL, project_id INT NOT NULL, assigned_date DATE NOT NULL DEFAULT (CURRENT_DATE()), PRIMARY KEY (volunteer_id, project_id), FOREIGN KEY (volunteer_id) REFERENCES volunteers(id), FOREIGN KEY (project_id) REFERENCES projects(id) );

Expected Output Upon successful execution, the application will automatically clean up the database, insert new volunteers, list them, and demonstrate the multithreading and exception handling features.

Volunteer Management System with OOP, JDBC, and Concurrency Demo

Database setup complete: tables checked/created.

--- Initial Cleanup --- Database cleanup successful.

--- 1. Adding Volunteers to DB (JDBC) --- Added: Alice Jones (ID: 1) Added: Bob Smith (ID: 2) ... (The rest of the successful output)

About

"Academic Project: Volunteer Management System. Implementation covers JDBC database connectivity (MySQL), Multithreading and Synchronization demo, Custom Exception Handling, and full use of OOP principles (Inheritance, Polymorphism, Abstraction) "

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages