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

Last updated 2022-01-10 | 3.6

- Use Spring MVC to implement MVC framework
- Use Bootstrap to quickly develop front-end view
- Develop domain classes to model the business entities

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

* Requirements

* 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.

Description

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

You can find lowest price here: 

www.ldeng(dot)net/courses


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.


Motivation

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.


MONEY BACK GUARANTEE

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

Course content

9 sections • 61 lectures

About IDE, if you are concerned Preview 01:00

Course Intro Preview 03:26

Website Demo Preview 07:02

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.

Environment Setup - JDK, Tomcat and IDE Preview 08:44

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

MVC (Model-View-Controller) Concept Preview 08:10

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

Hello Spring Demo using Spring MVC - Part 1 Preview 20:06

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 2 Preview 12:58

Hello Spring Demo Using Eclipse Preview 19:34

Exercies Preview 2 pages

Develop A Landing Page with Bootstrap Framework Preview 11:29

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.

Add the Landing Page to IDE - Part 1 Preview 13:27

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 2 Preview 13:24

Adding the Product Domain Model Preview 17:39

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.

Build the Product List using Bootstrap Table Components Preview 21:13

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

Add Common Template and Product Detail Page Preview 15:33

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.

Develop Dynamic Page to Show Product Data Preview 21:09

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).

Exercies Preview 2 pages

ORM (Object-Relational-Mapping) Preview 07:08

What is ORM and why do we need it?

Add Database Function with Spring Hibernate and Java Persistence - Part 1 Preview 20:56

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 2 Preview 21:42

Develop Add-Product Function - Part 1 Preview 18:37

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 2 Preview 19:33

Add Product Image - Part 1 Preview 19:29

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 2 Preview 19:18

Add Update-Product Function - Part 1 Preview 12:40

A edit product information function is added.

Add Update-Product Function - Part 2 Preview 15:09

Page Layout Revisit Preview 16:51

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

Validation Preview 08:31

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.

Exercises Preview 2 pages

Spring Security - Part 1 Preview 19:26

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

Spring Security - Part 2 Preview 17:14

Shopping Cart - Part 1 Preview 22:24

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 2 Preview 18:33

Shopping Cart - Part 3 Preview 15:49

Shopping Cart - Part 4 Preview 19:50

Shopping Cart - Part 5 Preview 18:50

Exercises Preview 3 pages

System Flow and Entity Relationship Diagrams Preview 07:56

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.

Adding Various Models - Part 1 Preview 17:42

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

Adding Various Models - Part 2 Preview 16:33

Product Admin Control - Part 1 Preview 18:17

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 2 Preview 12:28

Product Admin Control - Part 3 Preview 13:21

Product Admin Control - Part 4 Preview 15:27

Customer Registration - Part 1 Preview 21:07

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 2 Preview 22:43

Cart Controller - Part 1 Preview 10:50

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 2 Preview 13:50

Cart REST Services - Part 1 Preview 19:02

This is the first part developing RESTful Cart Services.

Cart REST Services - Part 2 Preview 13:45

Cart REST Services - Part 3 Preview 20:31

This is the second part developing RESTful Cart Services.

Add Customer Order Preview 12:13

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

Spring Web Flow Config Preview 23:24

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.

Add Web Flow Pages - Part 1 Preview 19:58

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

Add Web Flow Pages - Part 2 Preview 20:08

Customer Admin and Registration Validation Preview 13:38

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

Add Data Table Preview 14:19

Finish Adding Data Table and Add Contact Preview 19:28

Exercises Preview 00:38

All Other Courses and Coupons Preview 2 pages