0% found this document useful (0 votes)
21 views4 pages

Final Project

The document outlines a project for developing a secure e-commerce web application using Java Spring Boot, focusing on features like user registration, product management, and secure login via JWT. It details the technologies used, system architecture, and key modules for both users and admins. The project aims to create a fully functional online shopping platform while addressing challenges like JWT authentication and future enhancements like payment integration and order tracking.

Uploaded by

vishnukurmi017
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
21 views4 pages

Final Project

The document outlines a project for developing a secure e-commerce web application using Java Spring Boot, focusing on features like user registration, product management, and secure login via JWT. It details the technologies used, system architecture, and key modules for both users and admins. The project aims to create a fully functional online shopping platform while addressing challenges like JWT authentication and future enhancements like payment integration and order tracking.

Uploaded by

vishnukurmi017
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 4

Title:

Secure E-Commerce Web Application using Java Spring Boot

Submitted By:
Name: Vishnu

Roll Number: 0612CS201061

Course: B.Tech (Computer Science)

College: Adina College

Academic Year: 2024–2025

1. Introduction
E-commerce applications have revolutionized how we buy and sell products. The
growth of internet technology has enabled secure, scalable platforms that support
business operations online.
This project is a full-stack web application for an online shopping platform,
developed using Java Spring Boot, with a focus on security using Spring Security
and JWT, and dynamic rendering using Thymeleaf. The application allows users to
register, browse products, add them to cart, and place orders. Admins can manage
the products and orders via a secured admin interface.

2. Objectives
The objective of this project is to:

Create a fully functional, secure online shopping website.

Implement user and admin modules with role-based access.

Ensure secure login/logout using JWT (JSON Web Tokens).

Apply modern Java frameworks to handle backend and frontend rendering.

Understand complete development lifecycle with database integration.

3. Technologies Used
Component Technology Used
Frontend HTML, CSS, Thymeleaf Templates
Backend Java 17, Spring Boot, Spring MVC
Security Spring Security with JWT
Database MySQL
ORM Spring Data JPA
Build Tool Maven
Server Embedded Apache Tomcat
Version Control Git & GitHub
IDE IntelliJ IDEA / Eclipse

4. System Architecture
This project follows the MVC (Model-View-Controller) architecture:

Model: Contains JPA Entities for users, products, orders, etc.

View: Designed using Thymeleaf for dynamic HTML rendering.

Controller: Handles user/admin requests and maps to backend services.

Spring Security is integrated with JWT for stateless authentication, ensuring each
request is verified via token without using sessions.

5. Modules Overview
🔹 User Module
Register and Login (JWT token generation)

Browse/Search products

Add products to cart

Checkout and order summary

🔹 Admin Module
Admin login

Add/Edit/Delete products

View all customer orders

Manage inventory (optional)

6. Database Design
Database: MySQL

Key Tables:
users – ID, username, encrypted password, role

products – ID, name, price, description, image

cart_items – Tracks user's cart

orders – Order details with timestamp

order_items – Items under each order

Example Schema:
sql
Copy
Edit
CREATE TABLE users (
id INT PRIMARY KEY AUTO_INCREMENT,
username VARCHAR(50) UNIQUE,
password VARCHAR(255),
role VARCHAR(20)
);
7. JWT & Spring Security Integration
Security is the heart of this application. It uses:

JWT (JSON Web Tokens) for secure token-based login

Spring Security for authentication and role-based access

When a user logs in:

A JWT is issued.

Each request from frontend must include the token.

Spring filters verify the token and allow access accordingly.


Benefits:

Stateless session handling

Scalable and secure

Works across distributed systems

8. Project Structure
css
Copy
Edit
/ecommerce-springboot

├── /src/main/java/com/vishnu/ecommerce
│ ├── controller
│ ├── model
│ ├── repository
│ ├── service
│ ├── security
│ └── EcommerceApplication.java

├── /src/main/resources
│ ├── templates/ → Thymeleaf HTML files
│ ├── static/ → CSS, JS, images
│ └── application.properties
9. Key Features
Secure login with JWT

Role-based access control (user/admin)

Product catalog with search

Add to cart and place orders

Order summary page

Admin dashboard

RESTful API integration

Responsive design using Thymeleaf and CSS

10. Screenshots (Attach in Word/PDF)


Login/Register Page

Home/Product Listing Page

Cart and Order Summary

Admin Product Management

Admin Order Viewer

11. Challenges Faced


Setting up secure JWT authentication with Spring Security

Debugging token filters and access roles


Mapping Thymeleaf templates with backend logic

Handling CORS and cross-origin issues in API communication

Structuring efficient relational database schema

12. Future Scope


Integration with Razorpay/Stripe for real payments

Add product reviews and ratings

Wishlist functionality

Track order status and shipping details

Email and SMS notifications

Admin analytics and dashboard insights

13. Conclusion
This project was a complete learning experience of developing a modern, secure
full-stack web application. It involved working with core backend principles,
authentication systems, and frontend rendering. The use of Spring Boot, Spring
Security, JWT, and MySQL allowed for a scalable and secure system that mimics a
real-world e-commerce platform.

You might also like