Spring Framework MasterClass - from basics to advanced by Vinod Kayartaya

Spring Framework MasterClass - from basics to advanced

75 lectures - 9 hr 7 mins

What's included?

Video Icon 74 videos File Icon 3 files

Course content

Introduction
Course introduction
5 mins
High level introduction to Spring framework
3 mins
Software setup required to get started with this course
3 mins
DB Script
53.2 KB
Spring Basics - Eclipse Project
58.8 KB
Spring MVC Basics - Eclipse Project
300 KB
Spring basics
Spring as a factory of beans - Part 1
4 mins
Spring as a factory of beans - Part 2
26 mins
Singleton, Prototype and Lazy beans
7 mins
Setting up H2 database for our application
6 mins
Import tables and records to the H2 database
2 mins
Setting up Project Lombok in our Eclipse
5 mins
Getting the product count from the DB
7 mins
Reading from properties file
5 mins
Injecting Connection to the DAO bean
7 mins
Injecting a DB connection pool to the DAO bean
17 mins
@Component and @ComponentScan
5 mins
Spring's support for JDBC
The JdbcTemplate class
5 mins
Insert, update and delete using JdbcTemplate
7 mins
Queries that give one row with one column
5 mins
Queries that give one row with multiple columns
4 mins
Queries that give multiple rows with multiple columns
4 mins
Converting a query result into entity objects
14 mins
Adding CRUD and Query operations to the DAO interface
10 mins
Creating the JdbcTemplateProductDao class
22 mins
Spring's support for Hibernate
A quick introduction to Hibernate ORM
10 mins
Adding JPA annotations to entity classes
6 mins
SessionFactory and HibernateTemplate
8 mins
Implementing the HibernateTemplateProductDao class
9 mins
Testing our new DAO implementation class
8 mins
Aspect Oriented Programming
Key concepts of AOP
10 mins
Creating a simple method call logger Aspect
10 mins
Modifying the method parameters using AOP
11 mins
Transforming exceptions using AOP
5 mins
Spring's support for Transaction Management
Key concepts
4 mins
Creating a transaction manager bean
1 min
Managing transactions for HibernateTemplateProductDao
3 mins
Spring's support for Web MVC
Overview of HTTP client server communication
6 mins
Demo of HTTP client server communication
13 mins
Overview of MVC
4 mins
MVC using servlets and JSP
9 mins
Overview of Spring MVC
5 mins
Setting up Spring MVC
11 mins
Header, footer and main content
11 mins
Getting list of all products
20 mins
Configuring the view resolver
5 mins
Get products by price range
13 mins
Details of a selected product
7 mins
Spring forms - Add new product
19 mins
Radio buttons in product form
3 mins
Drop down controls in product form
10 mins
Validating datatype mismatch
20 mins
Validating custom rules
12 mins
Reusing the form for editing a product
8 mins
Handling errors in a Spring MVC application
17 mins
Spring's support for RESTful web services
Overview of REST
3 mins
GET many products
12 mins
GET one product
10 mins
POST a new product
8 mins
PUT a modified product
8 mins
DELETE an existing product
4 mins
Working with XML content
15 mins
APPENDIX A - Hibernate quick start guide
Creating the Maven project in Eclipse with Hibernate ORM dependencies
4 mins
Creating the Category entity class
5 mins
Creating the HibernateUtil class for getting a SessionFactory
9 mins
Persisting a Category instance into RDBMS
6 mins
Retrieving the Category instance from the RDBMS
3 mins
Updating a Category description
5 mins
Deleting a Category entity
3 mins
Many-to-one association between Product and Category entities
9 mins
One-to-many association between Category and Product entities
7 mins
Get all categories
5 mins
Get products by price range
4 mins
Pagination
3 mins
Projection
3 mins
Aggregate functions
2 mins
Bulk update
4 mins

Requirements

  • Basic knowledge of core Java programming
  • Basic knowledge of HTML/CSS/JSP is enough
  • Basic knowledge about databases
  • Absolutely no prior experience in Spring framework or any MVC application development

What you will learn in this course?

  • Spring framework as a factory of beans
  • Dependency injection
  • Inversion of control
  • Different types of components
  • Component scan
  • Manual Vs auto wiring
  • Apache database connection pool
  • Creating DAO layer classes
  • JdbcTemplate
  • Using Lombok
  • HibernateTemplate
  • Aspect oriented programming (AOP)
  • Transaction management
  • Spring MVC
  • Working with forms in Spring MVC
  • Form validation
  • ReSTful services (API) using Spring framework

Who this course is for:

  • Any Java developer aspiring to upgrade to Spring framework
  • Java Web developer looking to understand MVC
  • Anyone who is looking to understand REST APIs

Description

Spring Framework 5 is the THE RIGHT TECHNOLOGY STACK FOR THE JOB AT HAND.

This course offers hands-on experience with Spring and its major features, including configuration, data access, web and REST applications, Spring Boot, Spring Security and using Spring Cloud to build a small microservices application. On completion, participants will have a foundation for creating enterprise-ready applications. This Spring training course is the best way to prepare for the Spring Professional certification exam.

Upon completion of this course, participants will understand how to implement the following:

  • Spring configuration using Java Configuration and Annotations
  • Aspect oriented programming with Spring
  • Spring Data Access - JDBC, JPA and Spring Data
  • Spring Transaction Management
  • Build a very powerful MVC web application using Spring
  • Implementing REST with Spring MVC

The Spring Framework 5 provides a comprehensive programming and configuration model for modern Java-based enterprise applications - on any kind of deployment platform.


A key element of Spring is infrastructural support at the application level: Spring focuses on the "plumbing" of enterprise applications so that teams can focus on application-level business logic, without unnecessary ties to specific deployment environments.

Features:

  • Core technologies: dependency injection, events, resources, i18n, validation, data binding, type conversion, SpEL, AOP.
  • Testing: mock objects, TestContext framework, Spring MVC Test, WebTestClient.
  • Data Access: transactions, DAO support, JDBC, ORM, Marshalling XML.
  • Spring MVC and Spring WebFlux web frameworks.
  • Integration: remoting, JMS, JCA, JMX, email, tasks, scheduling, cache.
  • Languages: Kotlin, Groovy, dynamic languages. (We will be using Java)

Hi. My name is Vinod

Hi, my name is Vinod, and I am a software trainer, consultant and freelance developer. I am the creator some of the highest rated courses on Udemy. In my professional career, I have trained hundreds of thousands of software engineers. Teaching is not only my profession, but also a passion. Creating online courses gives me the opportunity to reach and help students across the world.