Spring Boot Basic To Advance

This comprehensive course provides an in-depth exploration of Spring Boot and its foundational concepts, designed to help you develop powerful, modern applications efficiently. Beginning with the essentials of Spring and Spring Boot, you’ll learn the core concepts of Inversion of Control (IoC), Dependency Injection (DI), and Spring’s unique approach to configuration. As the course progresses, you’ll dive into hands-on projects covering topics like XML and Java-based bean configuration, Spring JDBC, and Spring Data JPA, each essential for database management and data processing in Spring Boot applications.

Additionally, the course covers web development with Spring Boot, focusing on MVC architecture, RESTful API development, and front-end integration using React, equipping you with a complete toolkit to build dynamic, data-driven web applications. You’ll also learn how to use tools like Apache Tomcat, Postman, and various Spring Data features to test and deploy your applications. By the end, you’ll be prepared to leverage Spring Boot’s capabilities to create scalable, robust applications, with real-world projects on job management and e-commerce to solidify your knowledge.


What you’ll learn

  • Core Java (Optional)
  • Spring Boot
  • Spring Core – IoC
  • Spring MVC
  • Spring Data JPA
  • Spring REST

Course content:

Module 1: Introduction to Java Programming

  • Setting Up the Java Development Kit (JDK)
  • Configuring IntelliJ IDEA for Java Development
  • Writing the First Code in Java
  • Understanding Variables, Data Types, Literals, and Type Conversion
  • Working with Arithmetic, Relational, and Logical Operators
  • Using Conditional Statements: If-Else, If-Else-If, Ternary, and Switch Statements
  • Introduction to Loops: While, Do-While, For Loops, and Choosing the Right Loop
  • Overview of Classes and Objects, JDK, JRE, and JVM
  • Methods, Method Overloading, and Memory Management (Stack and Heap)
  • Array Basics: Creating Arrays, Multi-dimensional Arrays, Jagged Arrays, Array of Objects, and Enhanced For Loop
  • Introduction to Strings: Mutable vs. Immutable, StringBuffer, and StringBuilder
  • Understanding Static Members: Variables, Methods, and Blocks
  • Encapsulation with Getters and Setters, this Keyword, Constructors, Naming Conventions, and Anonymous Objects
  • Basics of Inheritance: Single, Multilevel, Multiple Inheritance, this and super Keywords
  • Method Overriding, Polymorphism, Dynamic Method Dispatch, and the final Keyword
  • Using Packages, Access Modifiers, and Wrapper Classes for Data Handling
  • Object Class Methods: equals, toString, hashCode
  • Concepts of Upcasting and Downcasting

Module 2: Advanced Java

  • Introduction to Project 1: Quiz Application
  • Creating QuestionService and Question Classes
  • Hardcoding Questions and Displaying Them
  • Implementing Quiz Play Functionality and Calculating the Score
  • Using the Abstract Keyword
  • Understanding Inner Classes and Anonymous Inner Classes
  • Combining Abstract Classes with Anonymous Inner Classes
  • Working with Interfaces and Their Use Cases
  • Understanding Enums: Enum If, Switch Statements, and Enum Classes
  • Introduction to Annotations
  • Types of Interfaces and Functional Interfaces
  • Using Lambda Expressions with and without Return Values
  • Exception Handling with Try-Catch and Multiple Catch Blocks
  • Exception Hierarchy and Using Throw and Throws Keywords
  • Creating Custom Exceptions and Using Try-With-Resources
  • Taking User Input with BufferedReader and Scanner
  • Introduction to Threads, Multithreading, Thread Priority, Sleep, and States
  • Runnable Interface vs. Thread Class and Race Conditions
  • Java Collections: Collection API, ArrayList, Set, and Map
  • Understanding Comparator vs. Comparable
  • Introduction to Stream API and its Methods: forEach, Map, Filter, Reduce, Sorted, and ParallelStream
  • Using the Optional Class, Method References, and Constructor References

Module 3: Getting Started with Spring 6

  • Overview of Spring Documentation
  • Choosing an IDE for Spring Development
  • Building Your First Spring Boot Application
  • Comparing Spring Framework and Spring Boot
  • Dependency Injection in Spring Boot
  • Understanding Autowiring in Spring Boot

Module 4: Core Concepts of the Spring Framework

  • Configuring Beans with XML
  • Instantiating Objects in Spring
  • Exploring Bean Scopes
  • Using Setter-Based Dependency Injection
  • Understanding the `ref` Attribute
  • Constructor-Based Injection
  • Interface Implementation in Spring
  • Autowiring in XML Configuration
  • Using Primary Beans
  • Enabling Lazy Initialization
  • Retrieving Beans by Type
  • Defining Inner Beans

Module 5: Java-Based Spring Configuration

  • Configuring Beans with Java Classes
  • Assigning Bean Names
  • Scope Configuration via Annotations
  • Applying Autowire in Java Config
  • Using Primary and Qualifier Annotations
  • Leveraging Component-Level Annotations
  • Injecting Dependencies via Field, Constructor, and Setter
  • Prioritizing Beans with @Primary
  • Using @Scope and @Value Annotations

Module 6: Transitioning to Spring Boot

  • Migrating from Traditional Spring to Spring Boot
  • Utilizing Annotations in Spring Boot Projects
  • Understanding Application Layers
  • Creating and Managing Service Classes
  • Implementing the Repository Layer

Module 7: Integrating Spring with JDBC

  • Introduction to Spring JDBC
  • Setting Up a Spring JDBC-Based Project
  • Designing Student Services and Repository Classes
  • Working with `JdbcTemplate`
  • Using SQL Schema and Initial Data Scripts
  • Implementing `RowMapper`
  • Connecting Spring JDBC with PostgreSQL

Module 8: Developing Web Applications with Spring Boot

  • Building a Basic Servlet Project
  • Deploying with Tomcat Server
  • Servlet URL Mapping
  • Creating Responses for Client Requests
  • Introduction to MVC Architecture
  • Setting Up a Spring Boot Web App
  • Creating and Linking JSP Pages
  • Building Controllers
  • Using @RequestMapping for Routing
  • Passing Data to Controllers
  • Handling Data Like Traditional Servlets
  • Showing Results on Web Pages
  • Working with @RequestParam
  • Introducing the Model Object
  • Defining View Prefixes and Suffixes
  • Returning Views with ModelAndView
  • Why Use @ModelAttribute
  • Using @ModelAttribute for Data Binding

Module 9: Spring MVC Fundamentals

  • What is Spring MVC?
  • Building a Spring MVC Project
  • Running Tomcat within Eclipse
  • Role of the Dispatcher Servlet
  • Setting Up DispatcherServlet Configuration
  • Configuring View Resolution

Module 10: Project Initialization and Setup

  • Creating a Job Listing Application
  • Setting Up the Project Structure
  • Working with View Templates
  • Building Controllers for Home and Add Job
  • Processing HTML Forms
  • Designing Multi-Layer Architecture
  • Displaying Information in Views

Module 11: Building RESTful Services

  • REST Basics with Spring Boot
  • Understanding REST Architecture
  • Overview of HTTP Methods
  • Examining a React-Based Frontend
  • Testing APIs with Postman
  • Writing REST Controllers in Spring
  • Integrating Spring with React Frontend
  • Using @PathVariable in Routes
  • Sending Data with @RequestBody
  • Handling PUT and DELETE Requests
  • Managing Content Types (Content Negotiation)

Module 12: Data Persistence with Spring Data JPA

  • Introduction to Spring Data JPA
  • ORM Concepts and JPA Overview
  • Creating and Populating Database Tables
  • Retrieving All Records with findAll
  • Fetching by ID with findById
  • Building Dynamic Queries with Query DSL
  • Updating and Deleting Records
  • Integrating JPA into the Job Application
  • Defining and Loading JPA Entities
  • Searching Data with Keywords
  • Creating React UI for Search
  • Enabling React UI for Update and Delete Functions

Module 13: Full Stack MVC with Spring Boot and React (Ecommerce WebApp)

  • Understanding Existing React Code
  • Setting Up a New Spring Boot Project
  • Defining the Product Model and Database Table
  • Fetching Product Data from the Database
  • Using ResponseEntity to Return API Results
  • Viewing Products by ID
  • Uploading Products with Images
  • Retrieving and Displaying Product Images
  • Editing and Removing Product Entries
  • Adding Search Capabilities

Module 14: Spring Data REST

  • Introduction to Spring Data REST
  • Building a Project with Spring Data REST
  • Running the Application
  • Updating and Deleting Resources via REST

Who this course is for:

  • If you want to transition into Web Development (Backend).
  • If you want to build Sophisticated and Resilient Web APIs.
  • If you want to secure your Web API using modern techniques.
  • If you want to learn best practices from a Senior Developer.

Prerequisites:
  • Java Programming (Optional)
  • Fundamentals Of Object-Oriented Programming (Optional)
  • Basic Knowledge of Web Development

International student Fee: 300 USD



Flexible Class Options

  • Week End Classes For Professionals  SAT | SUN
  • Corporate Group Trainings Available
  • Online Classes – Live Virtual Class (L.V.C), Online Training

Related Courses

 JavaScript Basic To Advance with Projects

Java Spring Boot Microservices training course

Java Developer Training (Java Course)

Mastering SOA and Java Web Services

Java Developer Fundamentals Training


KEY FEATURES

Flexible Classes Schedule

Online Classes for out of city / country students

Unlimited Learning - FREE Workshops

FREE Practice Exam

Internships Available

Free Course Recordings Videos

Register Now