This Project-Based Learning (PBL) plan is designed for students to develop a Sales Website using Java JSP (Jakarta EE) with Maven, running on Tomcat, and styled with Bootstrap. The project follows a step-by-step, hands-on approach over 17 epoches, guiding students from environment setup to deployment.
The primary objectives are:
The project emphasizes practical coding rather than theory, with each epoch covering a specific milestone. Students will:
The course is divided into three main phases:
Web-based sales application with:
| Epoch | Title | Description |
| —— | ———————————————— | ———————————————————————————————————————————————————————————————————– |
| 1 | Project Introduction & Environment Setup | Overview of project objectives (E-Commerce Web App), required skills, and methodology. Install and configure JDK 1.8_231, NetBeans 13, Tomcat 10.0.23 with Maven Web Application template. |
| 2 | Switching NetBeans Maven Template to Jakarta | Demonstrate replacing javax.*
imports with jakarta.*
equivalents in the NetBeans Maven Web Application template (Tools → Templates → Web → Servlets). Verify compatibility with Tomcat 10. |
| 3 | SQL Server Configuration | Enable TCP/IP protocol, set port (1433), configure mixed authentication mode, enable SA account, and test connection with SSMS. |
| 4 | JDBC Driver Integration & DB Setup | Add SQL Server JDBC driver dependency to pom.xml
. Create SQL Server database for the project. Set up sample tables (users
, products
, orders
). |
| 5 | Bootstrap Integration | Add Bootstrap via CDN in JSP pages. Apply a base layout to improve UI styling. |
| 6 | Hardcoded Login/Logout (Session or Cookie) | Create a login form (HTML + JSP). Validate user credentials using hardcoded values. Implement session or cookie-based login/logout. Show/hide content based on login status. |
| 7 | Login with Database (JSP Model 1) | Modify login form to validate credentials from the users
table using JDBC queries. |
Epoch | Title | Description |
---|---|---|
8 | Introduction to MVC in JSP/Servlets | Explain MVC structure and its benefits over Model 1. |
9 | Project Restructuring to MVC | Create model , view , controller packages. Move DB logic to DAO classes, servlets as controllers, and JSP as pure views. |
10 | Login/Logout in MVC | Reimplement login/logout flow using MVC pattern with DAO and servlet-based validation. |
11 | JSTL & Expression Language (EL) | Replace Java scriptlets in JSP pages with JSTL tags and EL expressions for cleaner code. |
12 | Product CRUD in MVC | Move product management from JSP scriptlets to MVC structure. |
13 | Shopping Cart in MVC | Store cart data in session via servlet controllers, display with JSP views. |
14 | Order Management in MVC | Handle order creation, database insertion, and order history retrieval. |
15 | Error Handling & Validation | Add server-side validation and error pages (404, 500). |
16 | Filter Implementation (Authentication) | Implement a servlet filter to restrict access to certain JSP pages unless logged in. |