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.
- 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
forOTP
-basedemail 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 theiradvisor accounts
by providingpassword
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 randomsalts
to ensure robust authentication security.
- Java EE
- HTML, CSS, JavaScript
- Maven
- Tomcat-9
- IntelliJ IDEA
Follow these steps to get the project up and running on your local machine:
- Prerequisites: Make sure you have Java, MySQL, Tomcat 9, and an Integrated Development Environment (IDE) like IntelliJ IDEA installed.
- 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. - Database Setup: Import the MySQL database schema provided in this repository as assoc.sql file.
- Google SMTP Settings: Generate your Gmail app password to use the Google SMTP server to send
OTP
foremail verification
. Click here to see how to generate an app password. - Configuration: Configure your MySQL credentials in the
dbConfig.properties
file in the resource folder of the project. - Deployment: Deploy the application on Tomcat 9 using your IDE or manual deployment.
- 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.]