Course provided by Udemy

Study type: Online

Starts: Anytime

Price: See latest price on Udemy


Hi there and welcome Full Stack Developer,

As part of this course you will build 3 independent complete systems


System 1: Full Stack (back-end to front-end) REST based app – Spring Boot, Angular

Course structure:

Section 1:

  • short introduction about me

  • detailed explanation of the prerequisites for this course (Java JDK 1.8, Maven, Spring Tool Suite, Postman)

Section 2:

  • create the initial project structure for a Spring Boot RESTful Java Application

  • will learn how to include dependencies under our Maven based project

  • understand the correct way to structure an application based on its components

  • create a REST API to handle 5 main operations (CREATE, READ, UPDATE, SEARCH, DELETE) by working with User as the conceptual resource

  • work with Postman in order to create collection and invoke REST APIs

Section 3:

  • offers an introduction to Spring Data JPA and H2 In Memory Database support

  • will learn how to migrate a simple User model class to an Entity concept that will be handled by H2 Database

  • understand the step-by-step process to migrate all operations for the the User RESTful resource to Spring Data JPA storage

  • learn the correct way to refactor code in stages

Section 4:

  • introduces Spring Security basic concepts

  • add a custom Spring Security implementation to handle basic authentication and access to resources

  • learn how to encode passwords in Spring Boot

  • introduce Spring Data JPA pagination support for Find All Users API

  • implement a mechanism to provide an alternative search for Find User based on specific criteria

  • Migrate from H2 In Memory Database to MySQL Database

  • Move application to run under Docker environment

Section 5:

  • create an Angular 10 based application as the front-end section for our course

  • transform the course to a Full Stack application

  • implement Authorization Mechanism

  • include Login and Users components

  • add support of working with Angular Guards

  • include different UI components as part of integrating MDBootstrap UI framework

  • create Angular services and main infrastructure of communicating with the Spring Boot back-end application


System 2: Build a fully functional contact form (back-end to front-end) + GMAIL integration

Course structure:

Even if you are new to this topic, or have some experience in the vast Web Development world, I will guide you on this step by step process of building this system.

  • So…what will we build?

    • We will create a complete and responsive contact form that will be capable of sending emails by using the GMAIL service integration support

  • What technologies/frameworks will we use for Front-end integration?

    • We will use Angular 10, Typescript and MDBootstrap Framework

  • What technologies/frameworks will we use for the Back-end integration?

    • Will work with Spring Boot, Spring Boot Mail Integration, and configure a testing GMAIL account that we can use for testing

  • What is the outcome of following this class you might ask?

    • You will understand the basic principles of working on a Full Stack Web Application (understand how the communication is made between a front-end app to a back-end server) – by following a real working example -> Building a contact form for a website


System 3: Build a Java SE Desktop App with Swing, Spring and MySQL

Course structure:

I am happy to present you the step by step process of building a complete Hangman/Guess the word game simulator by using Java programming language.

In the following sections, you will get to interact with multiple components that are part of the Java Swing Framework, such as:

  • JFrame

  • JPanel

  • MouseAdapter

  • ActionListener

  • JMenu

  • JLabel

  • any many more

In terms of development, we will use one of the most popular frameworks on the market, that is Spring Boot, and as a database to store our data, we will connect Spring Boot with MySQL as a relational database.


  • define a Java application using Spring Boot Framework;

  • setup a MySQL connection that will be required to retrieve random words from our database;

  • initialize all Spring related components that will allow working with MySQL by using Spring Data JPA technology

  • build the graphical user interface for our application

  • Please note that you have attached the source code of the project to just import it into your favorite IDE (I use under this course Spring Tool Suite IDE)


Expected Outcomes

  1. Build a Full Stack Application that will manage users
  2. Understand how to structure a Spring Boot Application in different modules
  3. Learn to code by creating an application in a step-by-step manner
  4. Get an introduction to Spring Data JPA
  5. Analyse Spring Security concepts
  6. Implement custom Spring Security authentication mechanism
  7. Build both back-end and front-end projects in one course
  8. Work with latest Angular version (Angular 10)
  9. Learn to work with MDBootstrap framework (for building the UI project)
  10. Get to work with Typescript – superset of Javascript
  11. Create a graphical user interface using Java Swing
  12. Define several Swing related components and understand how to work with them
  13. Learn to build desktop apps in Java