Skip to content

This project is part of my coursework of 'Database Management System Project' course in 3rd year 1st semester

Notifications You must be signed in to change notification settings

im-nayeem/assoc-java

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Student Association Management System

The Student Association Management System is a comprehensive web application built for the management of student associations within institutions like universities. This application, developed using Java EE, JSP, HTML, CSS, JavaScript, and MySQL, offers a suite of features to facilitate seamless communication and organization among association members, administrators, advisors, and alumni.

Key Features

  • User Roles: The application supports three user roles: Common Members, Advisors, and Admins.
  • Registration: New association members can easily register by providing their essential information.
  • Email Verification: To ensure authenticity, the application uses Google SMTP Server for OTP-based email verification.
  • Admin Approval of Registered Members: Upon member registration, the admin (part of the executive committee) reviews the submitted information and approves or rejects membership requests.
  • Executive Committee Management: Admins can add, update, and delete executive committee members from the pool of registered association members.
  • Advisor Addition: Admins have the authority to include advisors in the association. Advisors receive a confirmation link via email to set up their advisor accounts by providing password and other necessary information.
  • Alumni Management: Admins can manage alumni members, providing control over their addition, modification, or removal.
  • News, Notices, and Event Details: Admins can share important updates, notices, and event information with registered members and advisors.
  • Exclusive Access: Registered members and advisors gain access to the application's news, notices, event details, and association gallery after logging in.
  • Enhanced Security: The application employs password hashing with random salts to ensure robust authentication security.

Tools and Technology:

  • Java EE
  • HTML, CSS, JavaScript
  • Maven
  • Tomcat-9
  • IntelliJ IDEA

Getting Started

Follow these steps to get the project up and running on your local machine:

  1. Prerequisites: Make sure you have Java, MySQL, Tomcat 9, and an Integrated Development Environment (IDE) like IntelliJ IDEA installed.
  2. Fork or Download this Repository: Fork this repository and clone to your local machine or download the zip file of this repository and extract on yout local machine. Then navigate to the web_app folder which contains the application.
  3. Database Setup: Import the MySQL database schema provided in this repository as assoc.sql file.
  4. Google SMTP Settings: Generate your Gmail app password to use the Google SMTP server to send OTP for email verification. Click here to see how to generate an app password.
  5. Configuration: Configure your MySQL credentials in the dbConfig.properties file in the resource folder of the project.
  6. Deployment: Deploy the application on Tomcat 9 using your IDE or manual deployment.
  7. Initialize the Application: Open the application admin-panel in your browser by navigating to http://localhost:8080/{application-name}/admin-panel and provide the necessary information for the first time by login to the admin-panel.[ Use email: [email protected] and password: pass#admin for the first time and then change this later.]

Schema Diagram

Schema

Screenshots

Homepage

Homepage

Member Registration

registration

Email Verification by OTP

email verification

Admin Approval of Newly Registered Member

admin approval

Profile Dashboard

profile dashboard

Members

Members

Executive Committee

Executive Committee

Gallery

gallery

Admin Panel

admin panel

Manage Committe and Alumni from Existing Members

manage members

Managing Executive Committee

add committee update committe

Managing Advisor

add advisor new advisor

Add Notice

image image