A full-stack auction system inspired by eBay, built in Java with a MySQL backend. The project allows users to buy and sell toys through live auctions, complete with bidding, automatic bid increments, alerts, and administrative management.
This platform simulates a complete online auction marketplace specialized for toy sales. Users can create accounts, list items for auction, place bids, set automated bidding limits, and receive notifications about auction activity. Admins and customer representatives manage users, auctions, and reports through a dedicated interface.
- Register new users, log in, and log out securely.
- Access all buyer/seller functionality once authenticated.
For Sellers:
- Create auctions and list toys with descriptions, categories, and age ranges.
- Set a reserve price, closing time, and item characteristics.
- View bid history and auction progress.
For Buyers:
- Browse and bid on active toy auctions.
- Enable automatic bidding with a secret upper limit and custom increment.
- Receive notifications when outbid or when an auction closes.
Auction Resolution:
- Winners are automatically determined at auction close based on highest valid bid.
- Reserve prices are enforced — if not met, no winner is declared.
- Both seller and winner are notified of final results.
- Browse items by category, price, age range, or keyword.
- Sort items by highest bid, newest listing, or category.
- View individual auction pages with full bid history.
- Search for all auctions a specific buyer or seller has participated in.
- Set custom alerts for items of interest (e.g., “LEGO” or “Action Figures”).
- Receive notifications when matching items are listed.
- Stay updated on bidding activity and outbid notifications via an alerts page.
Admin Functions:
- Create and manage admin and customer representative accounts.
- Generate reports for total sales, top-performing items, and best buyers.
Customer Representative Functions:
- Handle user inquiries and support tickets.
- Edit or delete user accounts, bids, and auctions when necessary.
| Layer | Technology |
|---|---|
| Frontend | JSP, HTML, CSS |
| Backend | Java Servlets |
| Database | MySQL |
| Architecture | MVC-style structure using JDBC for database access |
| Server | Apache Tomcat |
You can test all functionality using the preloaded sample accounts below.
- Username:
admin - Password:
1000
| Username | Password |
|---|---|
testUser |
0000 |
john_doe |
password123 |
jane_smith |
securePass |
bob_jones |
bobspassword |
| Username | Password |
|---|---|
sammy |
1010 |