Mô tả

In this course, we will create a new project like an online-product-seller.


When I say online-product-seller application, we can think of it like that we will have a product-list page. Somehow users or customers will see these product-lists and they can buy one of them. Of course, at the end of it, this purchase will be stored and displayed later.


And we will implement this project using Spring Boot, ReactJS, and MySQL.


In our project, we will implement CRUD operations. These CRUD operations will be for users and products. We will use users for user sign-in, sign-up and authorization operations. And we will use the products for creating, editing, and deleting product operations.


These CRUD operations will be requested from ReactJS. So on the backend, we will create an infrastructure for these CRUD operations and on the frontend, we will serve them with the user interface.


Our project goes on with User and product operations.

Our main operations will be user login, register, product-list, create-product, delete-product etc.

Also, we will go on with the role based application. So we will use different roles like “Admin”, “User”. Then we will provide different authorizations to these users according to the role.

And this all things will be provided with a secure way in both React and Spring Boot.


We will have two main components to implement our project.

These are server side and client side.


In Server Side:


Of course here, our main library will be Spring-boot. We will implement the whole infrastructure on the backend with the Spring boot. It will provide easy and fast configuration to us.


We will implement the Model view controller architecture on our project.


Spring-security will be one of the main topics in our application. Also, we will use JWT to provide security.


In Spring Boot, Data will be presented to the client as an API call so Spring Rest Controller will be used to handle it.


We will use MySQL as Database. We can use other databases also but most of us familiar with MySQL.


We will also use Object Relational Mapping with Java Persistence API and Hibernate.


You know, We can map our database tables to objects with hibernate.


We will use JPA Repository and Crud Repository in Spring Boot.

So these repository templates will handle common database operations like save, update, find, delete.


With Spring Boot, we will also use the Lombok library to clear code.

You know that we don't want to implement getter, setter, equals and hashcode. So we can escape it using Lombok @Data or @Value annotation.


We will use Maven To handle all dependencies on the server side. Actually, here we can also use Gradle. Gradle provides better performance than maven but Maven is the most common one. So we'll go on with maven.


That's all about Server side.


Let's talk about Client Side.


We will create a ReactJS application on the client side and it will provide a cool user-interface. So we will create some pages like home-page, admin dashboard, login page and register-page. Then we will assign the server apis to these pages and we will consume and produce the data from the user-interface easily and user friendly.


Last but not least, we will implement security and authorization on ReactJS also. We will work with different roles and according to these roles, we will implement unauthorized and not-found pages on the user interface also.


We will see the details of them one by one.

Bạn sẽ học được gì

Full Stack Development with React and Spring Boot

Redux State Management Application

React Router Dom Implementation on Example Cases

Json Web Token Example on Backend and Frontend

Yêu cầu

  • Basic Java Knowledge
  • Basic Javascript Knowledge

Nội dung khoá học

21 sections

Introduction

2 lectures
Introduction - Architecture Of All System
04:34
What do We Try to Do in This Course?
01:46

Setting Up Development Environment

5 lectures
Download and Install Java 11+
02:25
Download and Install Intellij
02:32
Download and Install MySQL
03:40
Download and Install Lombok on Intellij - Pre Intellij 2021
01:20
Download and Install Postman
00:59

Overview for Basic Frameworks and Tools

5 lectures
Spring Boot Overview - Annotations, Beans, Configuration
07:42
Rest API Overview - Http Methods
04:02
SQL Overview - Basic CRUD Operations
02:49
Lombok Overview - Getter, Setter, Constructors
01:38
Postman Overview
05:30

Restful Web Services - Overview

3 lectures
@RequestParam Annotation and How does it work?
01:45
@PathVariable Annotation and How does it work?
01:29
@RequestBody Annotation and How does it work?
01:46

Spring Boot - Backend - Server Side

17 lectures
Source Code for the Backend
00:02
Overview - Architecture of Backend Project
03:30
Create Project with Spring Initializer
03:05
Create Database on MySQL
02:01
Configure Database Properties on Application Properties
03:45
Entity Diagram
01:35
Implement The User Entity Model Class
06:05
Do you want to learn more about ID Generated Strategies? - Optional
20:35
Implement The Product Entity Model Class
02:51
Hibernate Overview
04:00
Implement The Purchase Entity Model Class
06:17
Implement the User Repository Class with JPA CRUD Repository
06:20
Implement the Product Repository Class with JPA CRUD Repository
01:27
Implement the Purchase Repository Class with JPA CRUD Repository + Projections
04:07
Implement the User Service Class - Business Layer
06:59
Implement the Product Service Class - Business Layer
03:50
Implement the Purchase Service Class - Business Layer
03:06

Overview for Spring Security - Optional

3 lectures
What is Authentication?
03:42
What is Authorization?
04:29
How does Spring Security handle Authentication and Authorization?
03:31

Security Implementation

3 lectures
Load User by Username - User Details Service
11:54
Configure Security - Authentication Manager and HttpSecurity
10:03
Circular Reference Error - Spring Boot 2.6+
01:31

JWT Implementation

3 lectures
JWT Overview and Install JWT Libraries
03:51
JWT Helper Methods - Token Generation, Validation
13:59
Implement JWT Authorization Filter
06:20

Implement User Log In and User Sign Up

3 lectures
Authenticate User with Authentication Manager - Service
05:30
Response Entity Overview
01:25
Create Endpoints for User Log In and User Sign Up - Controller
08:22

Other Endpoints - Rest Controller

3 lectures
Implement User Controller - Rest Controller
05:54
Implement Product Controller - Rest Controller
07:56
Implement Purchase Controller - Rest Controller
05:08

Setting Up Development Environment For Client Side

4 lectures
Install NodeJS
00:59
Install React CLI
01:10
Javascript Overview
04:58
React Overview
07:34

Client Side (Frontend) and Server Side Integration (Backend)

1 lectures
Integration - How can we reach to Backend on the Frontend?
00:53

Client Side Implementation

9 lectures
Source Code for the Frontend
00:02
Overview - Architecture of Frontend Project
01:53
Create React Project With React CLI
04:05
Getting Start to React Project - How React works?
08:03
Configuration (BootStrap, Axios, Font-Awesome...)
03:59
Create Page Templates
08:36
Implement React Router Module
14:38
Router Links - Overview
04:02
Implement Error Pages - Not-Found and Unauthorized Pages
03:47

Structured Data - Javascript Models

3 lectures
Implement User Model Javascript Class
02:54
Implement Product Model Javascript Class
01:27
Implement Purchase Model Javascript Class
01:29

Axios and Services

2 lectures
Axios Promise Overview
05:48
Authentication Service Implementation - Sign-in, Sign-out, Sign-up
05:54

Redux

2 lectures
What is Redux and How does it work?
04:30
Redux Implementation For Current User
09:35

Sign-In and Sign-Up Forms

5 lectures
Implement Register Page Component
08:02
Implement Register Page Html Part1 - Create Page Template
05:28
Implement Register Page Html Part2
08:14
Implement Login Page
06:39
Navigation Bar With Bootstrap
03:56

Guards - Authorization

1 lectures
Implement Authentication Guard
07:27

JWT and Services

2 lectures
Create Base Service Class
02:21
Implement Product Service
03:10

Admin Dashboard

8 lectures
Implement Admin Page Component
07:28
Create Product Modal and Implement Product Modal Component
06:09
Implement Product Modal Html
06:32
Create Product Form in Product Modal
06:36
Pass Events from Product Modal to Admin Component - Props
03:20
Implement Edit Product Action - Pass data from Admin Component to Product Modal
06:03
Implement Delete Course Action
02:25
Improve Product Delete Action with Confirmation Dialog
07:43

Other Pages and Services

5 lectures
Implement Purchase Service
02:37
Implement Home Page
12:59
Implement User Service
02:12
Implement Profile Page
10:44
Unauthorized Check - Axios Interceptor
06:08

Đánh giá của học viên

Chưa có đánh giá
Course Rating
5
0%
4
0%
3
0%
2
0%
1
0%

Bình luận khách hàng

Viết Bình Luận

Bạn đánh giá khoá học này thế nào?

image

Đăng ký get khoá học Udemy - Unica - Gitiho giá chỉ 50k!

Get khoá học giá rẻ ngay trước khi bị fix.