How shreenidhims/onlyfoods works
OnlyFoods is a Java servlet-based food-delivery application. Users register or sign in, browse restaurants and menus, manage a cart, check out with a delivery address and payment mode, and place orders; they can later review order history and manage profile details and favourites. Servlets handle requests and coordinate JDBC-backed DAOs, with MySQL as the persistent store. The README documents additional UI capabilities, but web assets and several servlet implementations are not present in the supplied tree or excerpts, so their internal wiring is not expanded here.
Main entry points: DBConnector.java JDBC Connections · ProfileServlet.java Profile and Favourites · UserDAOImpl.java User Persistence · PlaceOrderServlet.java Place Order
Components 22
Accounts
- Registration
src/main/java/com/OnlyFoods/Servlet/RegisterServlet.java - Login
src/main/java/com/OnlyFoods/Servlet/LoginServlet.java - Logout
src/main/java/com/OnlyFoods/Servlet/LogoutServlet.java
Food Discovery
- Restaurant Browse
src/main/java/com/OnlyFoods/Servlet/RestaurantServlet.java - Category Browse
src/main/java/com/OnlyFoods/Servlet/CategoryServlet.java - Menu Browse
src/main/java/com/OnlyFoods/Servlet/MenuServlet.java
Cart and Orders
- Cart Management
src/main/java/com/OnlyFoods/Servlet/CartServlet.java - Checkout
src/main/java/com/OnlyFoods/Servlet/CheckoutServlet.java - Place Order
src/main/java/com/OnlyFoods/Servlet/PlaceOrderServlet.java - Order History
src/main/java/com/OnlyFoods/dao/OrderHistoryDAO.java
Profile
- Profile and Favourites
src/main/java/com/OnlyFoods/Servlet/ProfileServlet.java
Persistence
- User Persistence
src/main/java/com/OnlyFoods/daoimp/UserDAOImpl.java - Restaurant Persistence
src/main/java/com/OnlyFoods/daoimp/RestaurantDAOImpl.java - Category Persistence
src/main/java/com/OnlyFoods/daoimp/CategoryDAOImpl.java - Menu Persistence
src/main/java/com/OnlyFoods/daoimp/MenuDAOImpl.java - Cart Persistence
src/main/java/com/OnlyFoods/daoimp/CartDAOImpl.java - Order Persistence
src/main/java/com/OnlyFoods/daoimp/OrderDAOImpl.java - Address Persistence
src/main/java/com/OnlyFoods/daoimp/AddressDAOImpl.java - Favourite Persistence
src/main/java/com/OnlyFoods/daoimp/FavouriteDAOImpl.java - JDBC Connections
src/main/java/com/OnlyFoods/util/DBConnector.java
Other components
- Customer
- MySQL
Connections 33
- Customer → Registration: registers
- Customer → Login: signs in
- Customer → Logout: signs out
- Customer → Restaurant Browse: browses
- Customer → Category Browse: filters
- Customer → Menu Browse: explores
- Customer → Cart Management: manages cart
- Customer → Checkout: checks out
- Customer → Order History: reviews orders
- Customer → Profile and Favourites: manages account
- Registration → User Persistence: creates user
- Login → User Persistence: authenticates
- Restaurant Browse → Restaurant Persistence: loads restaurants
- Category Browse → Category Persistence: loads categories
- Menu Browse → Menu Persistence: loads menus
- Cart Management → Cart Persistence: reads and updates
- Checkout → Address Persistence: loads addresses
- Place Order → Cart Persistence: reads cart
- Place Order → Menu Persistence: resolves menu
- Place Order → Order Persistence: persists order
- Order History → Order Persistence: loads orders
- Profile and Favourites → User Persistence: updates user
- Profile and Favourites → Address Persistence: manages addresses
- Profile and Favourites → Favourite Persistence: manages favourites
- User Persistence → JDBC Connections: opens connection
- Restaurant Persistence → JDBC Connections: opens connection
- Category Persistence → JDBC Connections: opens connection
- Menu Persistence → JDBC Connections: opens connection
- Cart Persistence → JDBC Connections: opens connection
- Order Persistence → JDBC Connections: opens connection
- Address Persistence → JDBC Connections: opens connection
- Favourite Persistence → JDBC Connections: opens connection
- JDBC Connections → MySQL: connects