Full Stack Spring Security With React & Jwt
Published 8/2025
MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
Language: English | Size: 2.73 GB | Duration: 10h 58m
Published 8/2025
MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
Language: English | Size: 2.73 GB | Duration: 10h 58m
Employee Management System Project w/ Spring Security, Spring Data JPA, JTW's, Refresh Tokens, React 19, and Context API
What you'll learn
Setup and configure Spring Security 5 Session Authentication
Setup a React Application with Vite
Setup Role Based Authentication with Spring Security 5
Use Spring Data JPA to Authenticate a User Against a Database
Develop an Advanced React Application with User Authentication
Learn how to use React Context with a Real World Example
Setup Spring Security to Authenticate in a Stateless Manner with JWT and Refresh Tokens
Requirements
Intermediate Java Programming Experience
Intermediate ReactJS Programming Experience
Exposure to Spring Boot Eco System
Any Programming Experience
Description
Are you ready to master secure full stack web development using modern technologies? This comprehensive course walks you through building a production-ready authentication system using Spring Security on the backend and React with Vite on the frontend. Whether you're a Java developer looking to extend your skills into front-end development or a React developer interested in backend security, this course has you covered.We start by setting up a Spring Boot application and integrating Spring Security to enforce authentication and authorization rules. You'll learn how to connect the authentication logic to a relational database, validate user credentials, and securely store user data.Next, we dive into JWT (JSON Web Token) authentication, where you'll implement access and refresh tokens to provide a secure and seamless user experience. You'll learn how to protect endpoints, handle token expiration, and issue new tokens without forcing users to log in again.On the frontend, we build a sleek and fast React application using Vite. You'll manage global state with the Context API, and use Axios to make secure API calls to your Spring backend.By the end of this course, you'll have a complete, secure full stack app, and the skills to build and scale secure web applications confidently.
Overview
Section 1: Project Introduction and Configuration
Lecture 1 Project Introduction
Lecture 2 Section Outline
Lecture 3 Prerequisites
Lecture 4 Project Requirements and Demonstration
Lecture 5 Spring Boot Project Setup
Lecture 6 Spring Boot Project Configuration and First Entity Class
Lecture 7 Setup the Employee Service Class
Lecture 8 Setup the Employee Controller Class
Lecture 9 Test the Employee REST API with Postman
Lecture 10 Create the React Application with Vite
Lecture 11 Setup the Basic Skeleton React Application
Lecture 12 Section 1 Wrap Up
Section 2: Setup Authentication with Spring Security and React
Lecture 13 Section 2 Outline
Lecture 14 Setup the Spring Security Configuration
Lecture 15 Update the Employee Service Class to Authenticate Employees
Lecture 16 Setup the Authentication Service Class
Lecture 17 Setup the Authentication Controller Class
Lecture 18 Setup the React Application Global Context
Lecture 19 Setup the Frontend Authentication Service
Lecture 20 Setup the Custom Axios Instance and use the Custom Instance in Global Context
Lecture 21 Setup the Employee Login Page
Lecture 22 Setup the Login Form Components
Lecture 23 Setup and use the Employee Login Form
Lecture 24 Update the Layout Page and App Components to Render the Login Page
Lecture 25 Section 2 Wrap Up
Section 3: Setup Spring Data JPA and Role Based Authentication with Admin Functionality
Lecture 26 Section 3 Outline
Lecture 27 Add and Configure the Spring Data JPA Starter Dependency
Lecture 28 Setup the Base Entity Class
Lecture 29 Setup the Pay Information, Contact Information, and Employee Entity Classes
Lecture 30 Setup the Pay Information, Contact Information, and Employee Repository Classes
Lecture 31 Update the Security Configuration Enable to View the H2 Console
Lecture 32 Setup the Contact Information and Pay Information Service Classes
Lecture 33 Update the Employee Service Class to use the Employee Database Table
Lecture 34 Update the Authentication Service Class
Lecture 35 Update the Authentication Controller and Employee Controller Classes
Lecture 36 Update the Security Configuration to Allow the Admin Role Functionality
Lecture 37 Update the Login Page to Store the Updated Employee when Logging in
Lecture 38 Create the Navbar Component and Render it in the Layout Page
Lecture 39 Create the Skeleton Manage Employees Page
Lecture 40 Create the Frontend Employee Service and use it in the Global Context
Lecture 41 Create the Information Card Component
Lecture 42 Create the Employees Card Component and Associated Service Logic and Types
Lecture 43 Update the Auth Service to Register an Employee and Create the Form Select
Lecture 44 Create the Create Employee Form and Render it in the Manage Employees Page
Lecture 45 Create the Table Components and the Employee Table Component
Lecture 46 Fetch All Employees and Create the Employee Contact Information Component
Lecture 47 Create the Contact Information Card Component and the useFormatDollars Hook
Lecture 48 Create the Pay Information Card Component and Associated Types
Lecture 49 Setup the Ability to Update an Employees Information
Lecture 50 Test the React Application Changes in the Browser
Lecture 51 Section 3 Wrap Up
Section 4: Setup the Employee Role Logic and Timesheets
Lecture 52 Section 4 Outline
Lecture 53 Setup the Time Sheet Entity Class and Associated Model Classes
Lecture 54 Setup the Associated Time Sheet Repositories and Utility Classes
Lecture 55 Setup the Time Sheet Service Class
Lecture 0 Create the Time Sheet Controller Class and Update the Employee Controller Class
Lecture 56 Update the Security Configuration Class and Test the Employee Endpoints
Lecture 57 Create the Skeleton Manage Self Page and Add it to the App Component
Lecture 58 Create the Personal Information Card Component
Lecture 59 Update the Employee Service to Update Contact Information and add a new Type
Lecture 60 Update the Contact Information Card to be able to Update Information
Lecture 61 Create the Skeleton Time Sheet Page
Lecture 62 Create the Time Sheet Type and add Time Sheets to the Global Context
Lecture 63 Create the Time Sheet Component
Lecture 64 Add the Time Sheet Component to the Time Sheet Page and Test the Functionality
Lecture 65 Chapter 4 Wrap Up
Section 5: Setup the Manage Role Logic and Generate Paystubs
Lecture 66 Section 5 Outline
Lecture 67 Setup the Pay Stub Entity Class
Lecture 68 Setup the Pay Stub Repository Interface
Lecture 69 Update the Time Sheet Service Class for Approving and Denying Time Sheets
Lecture 70 Setup the Pay Stub Service Class
Lecture 71 Setup the Pay Roll Controller Class
Lecture 72 Update the Employee Repository and Service for new Manager Logic
Lecture 73 Update the Time Sheet Controller with the New Manager Logic
Lecture 74 Update the Security Configuration Class and Test the New Functionality
Lecture 75 Create the Skeleton Manage Reports Page
Lecture 76 Setup the Ability to Fetch the Managers Reporting Employees
Lecture 77 Create the Skeleton Review Time Sheets Page
Lecture 78 Setup the Ability to Fetch the Managers Time Sheets to Review
Lecture 79 Create the Review Time Sheets Table Component
Lecture 80 Create the Form Text Area Component and use it in the Review Time Sheet Table
Lecture 81 Add Pay Stubs, Pay Roll, and Pay Roll Preview to the Global Application State
Lecture 82 Create the Pay Roll Card Component
Lecture 83 Create the Pay Roll Table Component and use it in the Manage Employees Page
Lecture 84 Setup the Ability for Employees to View their Year to Date Pay Stubs
Lecture 85 Section 5 Wrap Up
Section 6: Setup OAuth 2 Resource Server and JWT Tokens
Lecture 86 Section 6 Outline
Lecture 87 Add the Spring Boot OAuth2 Resource Server Dependency
Lecture 88 Setup the Encryption Keys and Security Configuration Needed to Sign JWT Tokens
Lecture 89 Setup the Token Service Class
Lecture 90 Update the Authentication Controller Class to use JWT Tokens for Authentication
Lecture 91 Create the Refresh Token Entity Class and Associated Repository Interface
Lecture 92 Update the Token and Authentication Services to Make use of Refresh Tokens
Lecture 93 Update the Authentication Controller and Security Configuration for Refresh
Lecture 94 Create the useLocalStorageHook and Update the useAxios Hook
Lecture 95 Update the Authentication Service and Global Context for the new Authentication
Lecture 96 Add Final Functionality to the Authentication Service
Lecture 97 Create the Reset Password Form Component and use it in the Login Page
Lecture 98 Update the Navigation to Allow Logging out and Create the Footer Component
Lecture 99 Create the Timeout Popup Component
Lecture 100 Setup the Route Guard Logic Inside of the Layout Page
Lecture 101 Final Project Demonstration
Lecture 102 Course Wrap Up
Developers and Software Engineers Who Want to Learn Spring Security

