Building An E-Commerce Store Using Java Spring Framework
3.6 (1,059 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
4,644 students enrolled

Building An E-Commerce Store Using Java Spring Framework

Hands-on experience with Spring MVC, Spring Data, Hibernate, JPA, Spring Security, Spring Webflow and more
3.6 (1,059 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
4,644 students enrolled
Created by Le Deng
Last updated 12/2016
English [Auto]
Current price: $65.99 Original price: $94.99 Discount: 31% off
5 hours left at this price!
30-Day Money-Back Guarantee
This course includes
  • 14 hours on-demand video
  • 2 articles
  • 29 downloadable resources
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
Training 5 or more people?

Get your team access to 4,000+ top Udemy courses anytime, anywhere.

Try Udemy for Business
What you'll learn
  • Use Spring MVC to implement MVC framework
  • Use Bootstrap to quickly develop front-end view
  • Develop domain classes to model the business entities
  • Upload static resources such as images with the application
  • Use Spring Data to integrate with Hibernate and JPA to persist model objects
  • Use Spring Data, Hibernate or JPA for data validation
  • Use Spring Security for login control
  • Develop REST service APIs with Spring Framework
  • Use Angular JS to consume REST services
  • Use Spring Webflow to develop flow oriented web process, such as order checkout
Course content
Expand all 61 lectures 14:26:12
+ Intro
3 lectures 11:28

This will quickly show you the features of our Music Store website so that you have an idea on what things we will be building.

Preview 07:02
+ Setup and Demo
6 lectures 01:09:32

This lesson talks about Java JDK, Tomcat and IDE setup. Intellij is the recommended IDE in this course.

Environment Setup - JDK, Tomcat and IDE

What is MVC pattern and how does Spring MVC framework look like. This lesson shows some high level concepts.

MVC (Model-View-Controller) Concept

Here we get hands on practice to see how the MVC framework work with a quick Hello Spring demo.

Hello Spring Demo using Spring MVC - Part 1
Hello Spring Demo using Spring MVC - Part 2
Hello Spring Demo Using Eclipse
2 pages
+ Online Music Store Website Part 1 - Landing Page, Product Model and Product List
8 lectures 01:53:54

In this lesson, I will show you how to quickly adapt a template page from Twitter Bootstrap front-end framework to build the landing page of our Online Music Store.

Develop A Landing Page with Bootstrap Framework

From this lesson, we start to look at how to use Intellij to create a maven project and then integrate the landing page to it.

Add the Landing Page to IDE - Part 1
Add the Landing Page to IDE - Part 2

Domain model is a POJO (plain-old-java-object) that contains the basic information of object entity in the business model. It consists of private field attributes and public getters and setters. In this lesson, we will learn how to develop a domain model to represent the information of a product in our Music Store.

Adding the Product Domain Model

This lessons shows how to quickly adapt Bootstrap Table component to build the product list table.

Build the Product List using Bootstrap Table Components

Header and Footer sections in the html are usually stripped out so that they can be maintained in one place. This tutorial shows how to using common template across different views. Also, a product detail page is added.

Add Common Template and Product Detail Page

This lessons shows how to make the view pages dynamic to reflect the product data, which are accessed through business Model(M) and passed to the View(V) through controller(C).

Develop Dynamic Page to Show Product Data
2 pages
+ Online Music Store Website Part 2 - Spring Data with ORM, Hibernate and JPA
12 lectures 02:59:54

What is ORM and why do we need it?

ORM (Object-Relational-Mapping)

Writing pure JDBC code involves tedious repeated work. With the help of Hibernate, domain models are mapped automatically. Spring Hibernate integrates well with Hibernate and JPA to persist data into database. This course shows how to add the persistence layer into our system.

Add Database Function with Spring Hibernate and Java Persistence - Part 1
Add Database Function with Spring Hibernate and Java Persistence - Part 2

In this lesson, we will add the function of adding product. An admin can choose to add a product with its information and the newly added product will be persisted in database.

Develop Add-Product Function - Part 1
Develop Add-Product Function - Part 2

Product image is stored on server instead of database, so it is treated separately here. This lesson will show you how to upload an image and bind it with added product.

Add Product Image - Part 1
Add Product Image - Part 2

A edit product information function is added.

Add Update-Product Function - Part 1
Add Update-Product Function - Part 2

We will change some of the layout of our pages. This includes adding carousel background images, change navi-bar content and etc.

Page Layout Revisit

This lesson shows how to add server-side data validation when adding a product. Validation is a complex topic and in most of the time, it involves front-end javascript validation and back-end data validation. This lessons focus on the latter part.

2 pages
+ Online Music Store Website Part 3 - Spring Security, Shopping Cart Functionality
8 lectures 02:12:06

In this lesson, we are adding login control to our system. With Spring Security, the process becomes much easier.

Spring Security - Part 1
Spring Security - Part 2

This is the first part for adding shopping cart functionality. We'll start to add more domain models and data access objects into our system.

Shopping Cart - Part 1
Shopping Cart - Part 2
Shopping Cart - Part 3
Shopping Cart - Part 4
Shopping Cart - Part 5
3 pages
+ Online Music Store Website Part 4 - Developing a More Sophisticated System
14 lectures 03:43:32

A feasible architecture and design will prevent software project failure. The two diagrams we see in this lesson will give an overview on the whole system.

System Flow and Entity Relationship Diagrams

In this lessons, domain models are re-designed and added to the system.

Adding Various Models - Part 1
Adding Various Models - Part 2

In our online Music Store, admin privilege is required to add, update, edit products. The two-part lesson will show you how to integrate that function into our system.

Product Admin Control - Part 1
Product Admin Control - Part 2
Product Admin Control - Part 3
Product Admin Control - Part 4

In this lesson, we add a function to let guest user to register an account so that each time, he can login and checkout products.

Customer Registration - Part 1
Customer Registration - Part 2

The cart business logic takes care of adding and removing products, whose functions are provided through Cart REST services. Furthermore, Angular JS is used to consume the REST APIs. This lesson develop a cart controller for REST service control initialization.

Cart Controller - Part 1
Cart Controller - Part 2

This is the first part developing RESTful Cart Services.

Cart REST Services - Part 1
Cart REST Services - Part 2

This is the second part developing RESTful Cart Services.

Cart REST Services - Part 3
+ Online Music Store Website Part 5 - Order Checkout - Spring Web Flow
8 lectures 02:03:46

This lessons add customer order model, which are used for customer to checkout shopping cart.

Add Customer Order

Spring Web Flow is a framework used to develop web flow functionalities. We will use it to develop our checkout work flow. This lesson introduces Spring Web Flow configuration.

Spring Web Flow Config

Web flow consists of different view pages. This lesson will add those pages.

Add Web Flow Pages - Part 1
Add Web Flow Pages - Part 2

This lesson adds view customer list functions with admin privilege. Also, customer registration validation is described.

Customer Admin and Registration Validation
Add Data Table
Finish Adding Data Table and Add Contact
+ Get This Exercise Done
1 lecture 00:00

See this letter

See this letter
1 page
+ Bonus Section
1 lecture 00:00
All Other Courses and Coupons
2 pages
  • You need to have some sort of basic Java, Javascript, Spring Framework, Angular JS
  • If you don't, you can still do it, but learn whatever you don't understand yourself on the way. Actually, I kind of like this way, as it pushes you to learn and learn with a purpose.

WELCOME TO MY COURSE - "Building An E-Commerce Store Using Java Spring Framework"

You can find lowest price here: 


This is the Only course on Udemy that covers so much with Spring Framework web development. You won't find any other Spring Framework course covering practical stuff like this. 

Let's face it. Understanding theory is definitely not enough and understanding theory in pieces is even more harmful. This course connects dots of various perspectives of Web App development from frontend to backend. 

Bonus Section includes all the courses that I teach and promotions. Make sure you don't miss them.

Join the family of thousands of students, who have enrolled in my courses.


When I was learning Java and Spring Framework, I wish there was a course covering the hands-on experience to build a sophisticated and representative website, which utilizes the core features of Spring Framework. There are just plenty of books and tutorials to cover the Spring theory part, while some of them do give good examples on each topic, but I just couldn't find one to tell you how to put them together to build a full application. This course is trying to fill that hole, that is to give you comprehensive hands-on experience and guide you to stack them up to build something.

Course Features:

- You will follow the course to build an Online Music Store from Scratch

- You will be writing code with me along the course.

- We will use Spring MVC, Spring Data, Spring Security, Spring REST, Spring Web Flow, Hibernate, Angular JS, JSP, Bootstrap, H2 Database and more.

The course outline is below:

Section 1 is course intro and website demo.

Section 2 is about getting prepared, which includes environment setup, MVC concept and Hello Spring Demo. With this section finished, you will have a brief idea on what Spring Framework development looks like.

Section 3 starts to dive in building our project. Bootstrap is used as a template to quickly generate the front-end view. Then you will start to add domain models to your project. You will see how model, view and controllers are actually wired up. You will also learn how to make the view page dynamic with those model data.

Section 4 starts to look at data persistence. You will learn what ORM is and why we need it. We will use Spring Data to integrate with Hibernate and JPA to persist model data into database. We'll also look at how to add image with domain model and how to validate model attribute when updating its content.

Section 5 will deal with Spring Security. We will see how to use Spring Security to intercept sensitive url request and how to validate its credentials from database information. We'll also add more domain models into system and use in-memory data to prototype shopping cart functionality.

Section 6 looks at the system with a higher level. A Music Store prototype architecture is presented and used as guidance for our development. You will learn how to use what we learned in the previous lessons to make the online system more sophisticated. REST service API is developed with Spring and Angular JS is used to consume those APIs.

Section 7 shows how to use Spring Webflow to develop flow-oriented web process, specifically order checkout here. We will learn how we can configure Spring Webflow to put view pages and business logic together.

Furthermore, source code is attached with lessons (most of the time in video part 1) and exercise included as well.


Udemy provides 30-day money back guarantee. No reason needed! If you are not satisfied with the course, you can always get your money back. No Risk Involved! So sign up and I'll see you in the course!

Who this course is for:
  • Whoever is interested in Spring Framework
  • Whoever wants hands on experience with Spring Framework
  • Whoever wants to build a sophisticated website with Spring Framework