GithubHelp home page GithubHelp logo

sama1504 / event_management_system Goto Github PK

View Code? Open in Web Editor NEW
1.0 1.0 0.0 25 KB

The Event Management System is a Java application designed to help organize and manage events, conferences, and meetings. It provides various features for creating events, managing attendees, and handling special requests.

Java 100.00%
database-management gui-application java management-system sql

event_management_system's Introduction

Event Management System - Intermediate Level

This project is an Event Management System implemented in Java using Swing for the user interface and MySQL for data persistence. It provides basic functionalities for customers to create and manage events, attendees, and special requests, and for administrators to oversee and manage all events.

Features

For Customers:

  • Registration and Login: Customers can register with the system and log in to access their dashboard.
  • Event Creation: Customers can create events by providing details like title, description, type, date, and status.
  • Attendee Management: Customers can add attendees to their events.
  • Special Requests: Customers can submit special requests related to their events.
  • View Event Details: Customers can view the details of their created events.

For Administrators:

  • Login: Administrators can log in to access their dashboard.
  • View All Events: Administrators can view a list of all events created by all customers.
  • Approve/Reject Events: Administrators have the ability to approve or reject pending events.
  • View Event Details: Administrators can view detailed information for any event.
  • Refresh Event List: The administrator dashboard can be refreshed to get the latest event data.

Technologies Used

  • Java: The core programming language.
  • Swing: Used for building the graphical user interface (GUI).
  • MySQL: The database for storing user data, event information, attendees, and special requests.
  • JDBC: Used for connecting to the MySQL database and performing database operations.

Database Schema

The system uses the following tables in the MySQL database:

  • User: Stores user information (userId, username, password, email, userType).
  • Customer: Stores customer-specific information (customerId, customerName, userId).
  • Administrator: Stores administrator-specific information (adminId, adminName, userId).
  • Event: Stores event details (eventId, eventTitle, eventDescription, eventType, eventDate, eventStatus, customerId).
  • Attendee: Stores attendee information (attendeeId, attendeeName, eventId).
  • SpecialRequest: Stores special requests related to events (requestId, requestDescription, eventId).
  • +-------+ 1 +--------------+ | User |------<>-----| Customer | +-------+ +-------------+ | | | | 1 1 | | +---------------+ +-------+ | Administrator | | Event | +---------------+ +-------+ | | 1 N | | +----------+ +----------------+ | Attendee | | SpecialRequest | +----------+ +----------------+

Getting Started

  1. Database Setup:

    • Create a database named "event_management_system" in your MySQL server.
    • Create the tables listed in the "Database Schema" section by running the provided SQL scripts (You can find these scripts in the project code comments).
  2. Project Setup:

    • Import the project into Eclipse (or your preferred Java IDE).
    • Configure the build path to include the JUnit and MySQL Connector/J (JDBC driver) libraries. You can download the Connector/J JAR file from the MySQL website: https://dev.mysql.com/downloads/connector/j/
    • Update the database connection details (URL, username, password) in DatabaseConnection.java to match your MySQL setup.
  3. Running the Application:

    • Run the WelcomePageUI.java file as a Java application.
    • Register as a customer or administrator, log in, and interact with the system's functionalities.
  4. Demo of the Application: *image

    • image

    • Recording.2024-05-16.113204.part.2.mp4
    • Untitled.video.-.Made.with.Clipchamp.mp4

Future Enhancements

This project can be further enhanced with the following features:

  • Password Hashing: Implement password hashing for security.
  • Input Validation: Add robust input validation for all forms.
  • Advanced UI Features: Implement a visual calendar, user profile management, email notifications, and improved table formatting.
  • Event Capacity: Add event capacity limits and handle registration accordingly.
  • Search and Filtering: Implement search and filtering options for events and attendees.
  • Reporting and Analytics: Generate reports on event attendance, revenue, and customer behavior.

Contributing

Contributions are welcome! If you'd like to contribute to this project, please fork the repository and submit a pull request.

event_management_system's People

Contributors

sama1504 avatar

Stargazers

 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.