A Java Swing based desktop application for managing a cafe shop. This project includes product management, employee authentication, signup/login system, image upload support, and MySQL database integration. This project was developed as a Group Project during our Object Oriented Programming (OOP) Lab Course.
- Employee Signup
- Employee Login
- Password Visibility Toggle
- Input Validation
- Duplicate Username/Email/Phone Detection
- Add Products
- Update Products
- Delete Products
- Upload Product Images
- Product Categories
- Product Description & Pricing
- Upload product images using
JFileChooser - Preview uploaded image
- Store image path in MySQL database
Products can be categorized into:
- Refreshments
- Warmers
- Quickbites
- Beverage
- Sandwich
- Desserts
This project implements the four main OOP principles as follows:
- All UI components and data fields (e.g., product details, user credentials) are encapsulated inside their respective classes.
- Data is accessed and modified through methods such as button event handlers (
addActionPerformed,signUpActionPerformed, etc.). - This helps in protecting data and controlling access within the application.
- Internal implementation details like JDBC database connection, SQL queries, and file handling are hidden from the user.
- The user interacts only with simple actions like Add, Update, Delete, and Sign Up.
- Complexity is reduced by separating UI actions from backend logic.
- Built-in inheritance is used through Java Swing classes.
- Example:
JFrameis inherited by all GUI classes such asLogin,Signup, andProduct.
- This allows reuse of pre-built GUI functionality.
- Achieved through event handling mechanisms in Java Swing.
- Methods like
actionPerformed()are used for different buttons and components, showing different behaviors based on user interaction. - Event listeners demonstrate runtime polymorphism.
This project demonstrates:
- Java Swing GUI Development
- Event Handling
- JDBC Integration
- CRUD Operations
- File Handling
- Regex Validation
- Image Processing
