'Master Spring framework, Spring Boot, REST, JPA, Hibernate' course will help in understanding about Spring framework and how to build web applications, Rest Services using Spring, Spring MVC, SpringBoot, Thymeleaf, Spring JDBC, Spring Data JPA etc. By the end of this course, students will understand all the below topics:
Master Spring 6 Spring Boot 3 REST JPA Hibernate
- What is Spring framework ?
- Spring Vs Java EE
- Evolution of Spring and release timeline of Spring
- Different projects inside Spring
- Spring Core Concepts like Inversion of Control (IoC), Dependency Injection (DI) & Aspect-Oriented Programming (AOP)
- Different approaches of Beans creation inside Spring framework
- Bean Scopes inside Spring framework
- Autowiring of the Spring Beans
- Introduction to MVC pattern & overview of web apps
- Spring MVC internal architecture & how to create web applications using Spring MVC & Thymeleaf
- Spring MVC Validations
- How to build dynamic web apps using Thymeleaf & Spring
- Thymeleaf integration with Spring, Spring MVC, Spring Security
- Deep dive on Spring Boot, Auto-configuration
- Spring Boot Dev Tools
- Spring Boot H2 Database
- Securing web applications using Spring Security
- Authentication , Authorization, Role based access
- Cross-Site Request Forgery (CSRF) & Cross-Origin Resource Sharing (CORS)
- Database create, read, update, delete operations using Spring JDBC
- Introduction to ORM frameworks & database create, read, update, delete operations using Spring Data JPA/Hibernate
- Derived Query methods in JPA
- OneToOne, OneToMany, ManyToOne, ManyToMany mappings inside JPA/Hibernate
- Sorting, Pagination, JPQL inside Spring Data JPA
- Building Rest Services inside Spring
- Consuming Rest Services using OpenFeign, Web Client, RestTemplate
- Spring Data Rest & HAL Explorer
- Logging inside Spring applications
- Properties Configuration inside Spring applications
- Profiles inside Spring Boot applications
- Conditional Bean creation using Profiles
- Monitoring Spring Boot applications using SpringBoot Actuator & Spring Boot Admin
The pre-requisite for the course is knowledge of Java, basic exposure on HTML, CSS & interest to learn.
About the Author: Udemy
Udemy is the largest open marketplace for online courses on the internet. Founded in 2010 by Eren Bali, Oktay Caglar, and Gagan Biyani and headquartered in San Francisco, the company went public on the Nasdaq in 2021 under the ticker UDMY. The platform hosts well over two hundred thousand courses across software development, IT and cloud, data science, design, business, marketing, and creative skills, taught by tens of thousands of independent instructors. Roughly seventy million learners use it worldwide, and the corporate arm — Udemy Business — supplies a curated subset of that catalog to enterprise customers.
Because Udemy is a marketplace rather than a single editorial publisher, the catalog is uneven by design. The strongest material lives in the long-form, project-based courses authored by working engineers — full-stack JavaScript, React, Node.js, Python data science, AWS, Docker and Kubernetes, mobile development with Flutter and React Native, and cloud certification preparation. The CourseFlix listing under this source is the slice of that catalog that has been mirrored here for offline-friendly viewing, organized by topic and updated as new releases land. Pricing on Udemy itself swings dramatically with the site's near-permanent sales, which is why the platform is best treated as a deep reference catalog: pick instructors with strong reviews and a track record of updating their material rather than buying on the headline price alone.
Watch Online 248 lessons
- Space or K: play or pause
- J: rewind 10 seconds
- L: forward 10 seconds
- Left Arrow: rewind 5 seconds
- Right Arrow: forward 5 seconds
- Up Arrow: volume up
- Down Arrow: volume down
- M: mute or unmute
- F: toggle fullscreen
- T: toggle theater mode
- I: toggle mini player
- 0 to 9: seek to 0 to 90 percent of the video
- Shift plus N: next video
- Shift plus P: previous video
| # | Lesson Title | Duration |
|---|---|---|
| 1 | Introduction to the course & Agenda of the course | 14:36 |
| 2 | Details of Source Code, PDF Content & other instructions for the course | 10:10 |
| 3 | What is Spring ? | 08:16 |
| 4 | Jakarta EE Vs Spring | 12:06 |
| 5 | Introduction to Spring Core | 02:23 |
| 6 | Introduction to Inversion of Control (IoC) & Dependency Injection (DI) | 03:52 |
| 7 | Demo of Inversion of Control (IoC) & Dependency Injection (DI) | 11:15 |
| 8 | Advantages of Inversion of Control & Dependency Injection | 07:03 |
| 9 | Introductions to Beans, Context and SpEL | 06:09 |
| 10 | Introduction to Spring IoC Container | 06:42 |
| 11 | Installation of Maven | 09:06 |
| 12 | Creating Maven Project | 17:05 |
| 13 | Creating Beans using @Bean annotation | 15:50 |
| 14 | Understanding NoUniqueBeanDefinitionException in Spring | 08:09 |
| 15 | Providing a custom name to the bean | 04:41 |
| 16 | Understanding @Primary Annotation inside Spring | 05:57 |
| 17 | Creating Beans using @Component annotation | 08:34 |
| 18 | Stereotype Annotations in Spring | 05:56 |
| 19 | Comparison between @Bean Vs @Component | 05:35 |
| 20 | Understanding @PostConstruct Annotation | 06:05 |
| 21 | Understanding @PreDestroy Annotation | 05:04 |
| 22 | Creating Beans programmatically using registerBean() | 10:04 |
| 23 | Creating Beans using XML Configurations | 07:33 |
| 24 | Why should we use frameworks | 11:46 |
| 25 | Introduction to Spring Projects - Part 1 | 09:16 |
| 26 | Introduction to Spring Projects - Part 2 | 06:17 |
| 27 | Introduction to wiring & auto-wiring inside Spring | 07:54 |
| 28 | Wiring Beans using method call | 09:53 |
| 29 | Wiring Beans using method parameters | 03:37 |
| 30 | Wiring Beans using @Autowired on class fields | 09:06 |
| 31 | Wiring Beans using @Autowired on setter method | 04:49 |
| 32 | Wiring Beans using @Autowired on constructor | 05:43 |
| 33 | Deep dive of Autowiring inside Spring - Theory | 07:34 |
| 34 | Deep dive of Autowiring inside Spring - Coding example | 05:57 |
| 35 | Understanding and Avoiding Circular dependencies | 04:55 |
| 36 | Problem Statement for Assignment related to Beans, Autowiring and DI | 04:43 |
| 37 | Solution for Assignment related to Beans, Autowiring and DI | 15:34 |
| 38 | Introduction to Bean Scopes inside Spring | 03:24 |
| 39 | Deepdive on Singleton Bean scope | 07:03 |
| 40 | What is a Race Condition | 03:38 |
| 41 | Usecases of Singleton Bean scope | 04:46 |
| 42 | Deepdive of Eager and Lazy instantiation of Singleton scope | 05:57 |
| 43 | Demo of Eager and Lazy instantiation of Singleton bean | 04:29 |
| 44 | Eager Initialization Vs Lazy Initialization | 03:57 |
| 45 | Deepdive of Prototype Bean scope | 05:43 |
| 46 | Singleton Beans Vs Prototype Beans | 04:11 |
| 47 | Introduction to Aspect Oriented Programming (AOP) | 05:45 |
| 48 | Understanding the problems inside web applications with out AOP | 07:13 |
| 49 | Understanding & Running the Application with out AOP | 07:13 |
| 50 | AOP Jargons | 05:16 |
| 51 | Weaving inside AOP | 03:14 |
| 52 | Type of Advices inside AOP | 04:15 |
| 53 | Configuring Advices inside AOP - Theory | 11:33 |
| 54 | Configuring @Around advice | 10:56 |
| 55 | Configuring @Before advice | 07:30 |
| 56 | Configuring @AfterThrowing and @AfterReturning advices | 07:24 |
| 57 | Configuring Advices inside AOP with Annotations approach | 03:15 |
| 58 | Demo of Configuring Advices inside AOP with Annotations approach | 05:43 |
| 59 | Quick Introduction about Web Applications | 07:38 |
| 60 | Role of Servlets inside Web Applications | 06:46 |
| 61 | Evolution of Web Apps inside Java ecosystem | 04:16 |
| 62 | Types of Web Apps we can build with Spring | 06:35 |
| 63 | Introduction to Spring Boot - The Hero of Spring framework | 10:42 |
| 64 | Spring Boot Important features | 11:03 |
| 65 | Creating simple web application using Spring Boot | 14:24 |
| 66 | Running simple web application using Spring Boot | 13:57 |
| 67 | Changing the default server port & context path of SpringBoot Web application | 05:31 |
| 68 | Random server port number inside SpringBoot | 04:09 |
| 69 | Demo of SpringBoot Autoconfiguration | 11:42 |
| 70 | Quick recap | 05:08 |
| 71 | Quick Tip - Mapping multiple paths inside Spring Web Application | 13:12 |
| 72 | Introduction to Thymeleaf | 08:39 |
| 73 | Building dynamic content using Thymeleaf | 09:59 |
| 74 | Disabling Thymeleaf template caching | 07:04 |
| 75 | Introduction to Spring Boot DevTools | 07:38 |
| 76 | Implemetation & Demo of Spring Boot DevTools | 07:39 |
| 77 | Building Home Page of EazySchool Web Application | 07:24 |
| 78 | Understanding the Home Page source code of EazySchool | 05:56 |
| 79 | Deep Dive of Spring MVC Internal architecture | 12:28 |
| 80 | Separation of Header and Footer code using Thymeleaf replace tag | 08:15 |
| 81 | Building Courses Web Page of Eazy School Web Application | 12:08 |
| 82 | Quick Tip - Resolving Build & Cache issues inside maven projects | 02:13 |
| 83 | Building About Page of Eazy School Web Application | 06:48 |
| 84 | Building Contact Page of Eazy School Web Application | 05:26 |
| 85 | Submit information from Contact page using @RequestParam | 10:54 |
| 86 | Submit information from Contact page using POJO object | 08:31 |
| 87 | Define actions for all the links in the Home & Footer page | 06:19 |
| 88 | Building Holidays Page of Eazy School Web Application | 12:36 |
| 89 | Introduction to Lombok library | 07:00 |
| 90 | Implementing Lombok inside Eazy School Web App | 06:39 |
| 91 | Demo of @Slf4j annotation from Lombok library | 03:57 |
| 92 | Accepting Query Params using @RequestParam annotation - Theory | 08:47 |
| 93 | Accepting Query Params using @RequestParam annotation - Coding | 12:05 |
| 94 | Accepting Path Params using @PathVariable annotation - Theory | 05:23 |
| 95 | Accepting Path Params using @PathVariable annotation - Coding | 07:19 |
| 96 | Importance of Validations inside Web Applications | 12:00 |
| 97 | Introduction to Java Bean Validations | 10:10 |
| 98 | Adding Bean Validation annotations inside Contact POJO class | 10:14 |
| 99 | Adding Bean Validation related changes inside EazySchool Web Application | 12:17 |
| 100 | Demo of Bean Validations inside Contact form Page | 06:49 |
| 101 | Introduction to Spring Web Scopes | 07:02 |
| 102 | Use Cases of Spring Web Scopes | 09:27 |
| 103 | Demo of @RequestScope inside Eazy School Web Application | 06:32 |
| 104 | Demo of @SessionScope inside Eazy School Web Application | 06:29 |
| 105 | Demo of @ApplicationScope inside Eazy School Web Application | 05:48 |
| 106 | Introduction to Spring Security | 07:17 |
| 107 | Deepdive of Authentication Vs Authorization | 05:48 |
| 108 | Demo of Spring Security inside Eazy School Web App with default behavior | 06:28 |
| 109 | Configure custom credentials inside Spring Security | 04:29 |
| 110 | Understanding default security configurations inside Spring Security framework | 05:55 |
| 111 | Configure permitAll() inside Web App using Spring Security | 07:15 |
| 112 | Configure denyAll() inside Web App using Spring Security | 05:48 |
| 113 | Configure custom security configurations using Spring Security | 10:58 |
| 114 | Demo of CSRF protection & CSRF Disable inside Spring Security framework | 09:34 |
| 115 | Configure multiple users using inMemoryAuthentication() of Spring Security | 09:27 |
| 116 | Implement Login & Logout inside Web App - Part 1 | 07:11 |
| 117 | Implement Login & Logout inside Web App - Part 2 | 09:51 |
| 118 | Implement Login & Logout inside Web App - Part 3 | 05:16 |
| 119 | Demo of integration between ThymeLeaf & Spring Security | 10:37 |
| 120 | Introduction to @ControllerAdvice & @ExceptionHandler annotations | 09:00 |
| 121 | Demo of @ControllerAdvice & @ExceptionHandler annotations | 10:43 |
| 122 | Deep dive of CSRF attack | 12:14 |
| 123 | Solution for CSRF attack - Theory | 10:22 |
| 124 | Solution for CSRF attack - Coding | 11:26 |
| 125 | Introduction to in-memory H2 Database of Spring Boot | 08:38 |
| 126 | Setup H2 Database inside a Spring Boot web application | 16:37 |
| 127 | Introduction to JDBC & problems with it | 09:42 |
| 128 | Introduction to Spring JDBC | 10:40 |
| 129 | Deep dive on usage of JdbcTemplate | 08:01 |
| 130 | Saving Contact Message into DB using JdbcTemplate Insert operation | 14:26 |
| 131 | Display Contact messages from DB using JdbcTemplate select operation - Part 1 | 06:52 |
| 132 | Display Contact messages from DB using JdbcTemplate select operation - Part 2 | 15:41 |
| 133 | Update Contact messages status using JdbcTemplate update operation | 09:41 |
| 134 | Implementing AOP inside Eazy School Web Application | 08:23 |
| 135 | Display list of Holidays from H2 Database using JdbcTemplate | 16:29 |
| 136 | Setup MYSQL DB inside AWS - Part 1 | 08:28 |
| 137 | Setup MYSQL DB inside AWS - Part 2 | 09:41 |
| 138 | Migrate from H2 Database to MYSQL Database | 09:09 |
| 139 | Demo of MYSQL Database changes inside Eazy School Web App | 09:39 |
| 140 | Problems with Spring JDBC & how ORM frameworks solve these problems | 06:08 |
| 141 | Introduction to Spring Data | 06:46 |
| 142 | Deepdive on Repository,CrudRepository,PagingAndSortingRepository,JpaRepository | 16:50 |
| 143 | Introduction to Spring Data JPA | 12:26 |
| 144 | Migrate from Spring JDBC to Spring Data JPA - Part 1 | 11:07 |
| 145 | Migrate from Spring JDBC to Spring Data JPA - Part 2 | 13:12 |
| 146 | Migrate from Spring JDBC to Spring Data JPA - Part 3 | 08:28 |
| 147 | Migrate from Spring JDBC to Spring Data JPA - Part 4 | 09:50 |
| 148 | Deep dive on derived query methods inside Spring Data JPA | 09:20 |
| 149 | Introduction of Auditing Support by Spring Data JPA | 12:50 |
| 150 | Implement automatic auditing support with Spring Data JPA - Part 1 | 09:44 |
| 151 | Implement automatic auditing support with Spring Data JPA - Part 2 | 07:41 |
| 152 | Building new user registration web page inside Eazy School Web App | 13:41 |
| 153 | Building Custom validations for new user registration page - Part 1 | 08:34 |
| 154 | Building Custom validations for new user registration page - Part 2 | 13:55 |
| 155 | Building Custom validations for new user registration page - Part 3 | 07:48 |
| 156 | Building Custom validations for new user registration page - Part 4 | 16:13 |
| 157 | Creating new tables required for new user registration process | 10:37 |
| 158 | Spring Data JPA configurations for Person, Address, Roles tables and entities | 08:13 |
| 159 | Introduction to One to One Relationship inside ORM frameworks | 06:50 |
| 160 | Making One to One Relationship configurations inside entity classes - Theory | 08:01 |
| 161 | Deep dive on Fetch Types and Cascade Types in ORM frameworks | 10:04 |
| 162 | Making One to One Relationship configurations inside entity classes - Coding | 17:23 |
| 163 | Understanding Spring Security configurations for custom authentication logic | 09:03 |
| 164 | Implement Spring Security changes for custom authentication logic - Part 1 | 14:02 |
| 165 | Implement Spring Security changes for custom authentication logic - Part 2 | 07:05 |
| 166 | Problems with Authentication logic using plain text passwords | 03:27 |
| 167 | Deep dive on Encoding, Encryption and Hashing for password management | 12:00 |
| 168 | Deep dive on PasswordEncoder & BCryptPasswordEncoder | 08:37 |
| 169 | Implementing password hashing with BCryptPaswordEncoder - Part 1 | 14:17 |
| 170 | Implementing password hashing with BCryptPaswordEncoder - Part 2 | 05:54 |
| 171 | Quick Tip - To Disable the javax validations in Spring Data JPA | 05:54 |
| 172 | Displaying Profile link inside Dashboard web page | 06:04 |
| 173 | Displaying Profile Web Page on click of profile link in Dashboard | 12:29 |
| 174 | Fetch data from DB and display on the Profile web page | 14:44 |
| 175 | Save Address Data into DB from Profile Page | 09:24 |
| 176 | Introduction to new enhancements related to OnetoMany, ManytoOne & ManytoMany | 02:19 |
| 177 | Displaying Classes, Courses link inside Dashboard web page | 07:57 |
| 178 | Introduction to OneToMany & ManyToOne mappings | 10:40 |
| 179 | Implement OneToMany & ManyToOne configurations inside Entity classes | 09:07 |
| 180 | Displaying new Web Page on click of classes link in Dashboard | 07:03 |
| 181 | Add & Delete Classes enhancement inside Eazy School Web App | 13:22 |
| 182 | Display, Add & Delete Students enhancement inside Eazy School Web App - Part 1 | 14:17 |
| 183 | Display, Add & Delete Students enhancement inside Eazy School Web App - Part 2 | 08:48 |
| 184 | Introduction to ManyToMany relationship in ORM frameworks | 12:54 |
| 185 | Implement ManyToMany configurations inside Entity classes | 11:01 |
| 186 | Display & Add Courses enhancement inside Eazy School Web App - Part 1 | 08:36 |
| 187 | Display & Add Courses enhancement inside Eazy School Web App - Part 2 | 10:46 |
| 188 | Display & Add Students enhancement inside Course Web Page | 11:21 |
| 189 | Delete Student enhancement inside Course Web Page | 06:03 |
| 190 | Implement Student Dashboard related enhancements inside Eazy School Web App | 14:43 |
| 191 | Introduction to Sorting inside Spring Data JPA | 06:57 |
| 192 | Implement & Demo of Static Sorting | 06:07 |
| 193 | Implement & Demo of Dynamic Sorting | 05:12 |
| 194 | Introduction to Pagination inside Spring Data JPA | 09:33 |
| 195 | Implement & Demo of Pagination & Dynamic Sorting - Part 1 | 21:03 |
| 196 | Implement & Demo of Pagination & Dynamic Sorting - Part 2 | 12:21 |
| 197 | Introduction to custom queries using @Query,@NamedQuery,@NamedNativeQuery & JPQL | 13:56 |
| 198 | Writing Custom Queries using @Query Annotation | 08:30 |
| 199 | Writing Custom Update Queries using @Query,@Modifying,@Transactional Annotations | 12:11 |
| 200 | Deep dive on @NamedQuery,@NamedNativeQuery inside Spring Data JPA | 05:46 |
| 201 | Writing Custom Queries using @NamedQuery,@NamedNativeQuery Annotations | 15:17 |
| 202 | Introduction to REST Services | 06:54 |
| 203 | Build REST services using Spring MVC style & @ResponseBody annotation - Theory | 05:42 |
| 204 | Implement REST service using Spring MVC style & @ResponseBody - Part 1 | 08:41 |
| 205 | Implement REST service using Spring MVC style & @ResponseBody - Part 2 | 08:27 |
| 206 | Deep dive & Demo of @RequestBody annotation | 10:03 |
| 207 | Implement REST Services using @RestController annotation | 03:43 |
| 208 | Demo of save operation using Rest Service & ResponseEntity | 13:47 |
| 209 | Demo of delete operation using Rest Service & RequestEntity | 06:19 |
| 210 | Demo of update operation using Rest Service & recap of all Rest annotations | 08:17 |
| 211 | Implement global error logic for Rest Services using @RestControllerAdvice | 06:51 |
| 212 | Deep dive on CROSS-ORIGIN RESOURCE SHARING (CORS) & @CrossOrigin annotation | 07:09 |
| 213 | Sending Response in XML format in Rest Services | 05:03 |
| 214 | Demo of Content filter inside Rest Services using @JsonIgnore annotation | 04:53 |
| 215 | Introduction to Consuming Rest Services inside Web Applications | 09:55 |
| 216 | Consuming Rest Services using OpenFeign - Theory | 10:01 |
| 217 | Consuming Rest Services using OpenFeign - Coding | 11:37 |
| 218 | Consuming Rest Services using RestTemplate | 14:33 |
| 219 | Consuming Rest Services using WebClient | 15:13 |
| 220 | Introduction to Spring Data Rest & HAL Explorer | 07:09 |
| 221 | Deep dive of Spring Data Rest & exploring Rest APIs - Part 1 | 10:49 |
| 222 | Deep dive of Spring Data Rest & exploring Rest APIs - Part 2 | 12:20 |
| 223 | Exploring Rest APIs of Spring Data Rest using HAL Explorer | 08:58 |
| 224 | Securing Spring Data Rest APIs & HAL Explorer | 03:43 |
| 225 | Quick Tips around Spring Data Rest | 06:43 |
| 226 | Introduction to Logging inside SpringBoot | 09:56 |
| 227 | Logging configurations for SpringBoot framework code | 07:35 |
| 228 | Logging configurations for Application code | 09:04 |
| 229 | Store log statements into a custom file and folder | 12:01 |
| 230 | Introduction to Externalized properties inside SpringBoot Web Applications | 06:39 |
| 231 | Reading properties using @Value annotation | 07:18 |
| 232 | Reading properties using Environment interface | 04:52 |
| 233 | Reading properties using @ConfigurationProperties - Theory | 10:40 |
| 234 | Reading properties using @ConfigurationProperties - Coding | 10:34 |
| 235 | Introduction to Profiles in Spring | 04:31 |
| 236 | Implementation & Demo of Profiles inside Eazy School Web App | 08:34 |
| 237 | Various approaches to activate Profiles inside Spring | 14:07 |
| 238 | Creating beans conditionally based on active profile | 06:27 |
| 239 | Introduction to Spring Boot Actuator | 03:56 |
| 240 | Implement and Secure Actuator inside Eazy School Web App | 06:39 |
| 241 | Deepdive of Actuator endpoints | 17:20 |
| 242 | Exploring Actuator data using Spring Boot Admin | 15:13 |
| 243 | Introduction to Cloud Deployment, AWS EC2 & AWS Elastic Beanstalk | 09:31 |
| 244 | Packaging Spring Boot application for AWS Deployment | 07:04 |
| 245 | Deploying Spring Boot app into AWS Elastic Beanstalk | 11:27 |
| 246 | Switching DB inside AWS Elastic Beanstalk | 08:27 |
| 247 | Deleting AWS Beanstalk & DB resources | 03:06 |
| 248 | Thank You & Congratulations | 02:32 |
Course content
248 lessons · 36h 15m 18sShow all 248 lessons
- 1 Introduction to the course & Agenda of the course 14:36
- 2 Details of Source Code, PDF Content & other instructions for the course 10:10
- 3 What is Spring ? 08:16
- 4 Jakarta EE Vs Spring 12:06
- 5 Introduction to Spring Core 02:23
- 6 Introduction to Inversion of Control (IoC) & Dependency Injection (DI) 03:52
- 7 Demo of Inversion of Control (IoC) & Dependency Injection (DI) 11:15
- 8 Advantages of Inversion of Control & Dependency Injection 07:03
- 9 Introductions to Beans, Context and SpEL 06:09
- 10 Introduction to Spring IoC Container 06:42
- 11 Installation of Maven 09:06
- 12 Creating Maven Project 17:05
- 13 Creating Beans using @Bean annotation 15:50
- 14 Understanding NoUniqueBeanDefinitionException in Spring 08:09
- 15 Providing a custom name to the bean 04:41
- 16 Understanding @Primary Annotation inside Spring 05:57
- 17 Creating Beans using @Component annotation 08:34
- 18 Stereotype Annotations in Spring 05:56
- 19 Comparison between @Bean Vs @Component 05:35
- 20 Understanding @PostConstruct Annotation 06:05
- 21 Understanding @PreDestroy Annotation 05:04
- 22 Creating Beans programmatically using registerBean() 10:04
- 23 Creating Beans using XML Configurations 07:33
- 24 Why should we use frameworks 11:46
- 25 Introduction to Spring Projects - Part 1 09:16
- 26 Introduction to Spring Projects - Part 2 06:17
- 27 Introduction to wiring & auto-wiring inside Spring 07:54
- 28 Wiring Beans using method call 09:53
- 29 Wiring Beans using method parameters 03:37
- 30 Wiring Beans using @Autowired on class fields 09:06
- 31 Wiring Beans using @Autowired on setter method 04:49
- 32 Wiring Beans using @Autowired on constructor 05:43
- 33 Deep dive of Autowiring inside Spring - Theory 07:34
- 34 Deep dive of Autowiring inside Spring - Coding example 05:57
- 35 Understanding and Avoiding Circular dependencies 04:55
- 36 Problem Statement for Assignment related to Beans, Autowiring and DI 04:43
- 37 Solution for Assignment related to Beans, Autowiring and DI 15:34
- 38 Introduction to Bean Scopes inside Spring 03:24
- 39 Deepdive on Singleton Bean scope 07:03
- 40 What is a Race Condition 03:38
- 41 Usecases of Singleton Bean scope 04:46
- 42 Deepdive of Eager and Lazy instantiation of Singleton scope 05:57
- 43 Demo of Eager and Lazy instantiation of Singleton bean 04:29
- 44 Eager Initialization Vs Lazy Initialization 03:57
- 45 Deepdive of Prototype Bean scope 05:43
- 46 Singleton Beans Vs Prototype Beans 04:11
- 47 Introduction to Aspect Oriented Programming (AOP) 05:45
- 48 Understanding the problems inside web applications with out AOP 07:13
- 49 Understanding & Running the Application with out AOP 07:13
- 50 AOP Jargons 05:16
- 51 Weaving inside AOP 03:14
- 52 Type of Advices inside AOP 04:15
- 53 Configuring Advices inside AOP - Theory 11:33
- 54 Configuring @Around advice 10:56
- 55 Configuring @Before advice 07:30
- 56 Configuring @AfterThrowing and @AfterReturning advices 07:24
- 57 Configuring Advices inside AOP with Annotations approach 03:15
- 58 Demo of Configuring Advices inside AOP with Annotations approach 05:43
- 59 Quick Introduction about Web Applications 07:38
- 60 Role of Servlets inside Web Applications 06:46
- 61 Evolution of Web Apps inside Java ecosystem 04:16
- 62 Types of Web Apps we can build with Spring 06:35
- 63 Introduction to Spring Boot - The Hero of Spring framework 10:42
- 64 Spring Boot Important features 11:03
- 65 Creating simple web application using Spring Boot 14:24
- 66 Running simple web application using Spring Boot 13:57
- 67 Changing the default server port & context path of SpringBoot Web application 05:31
- 68 Random server port number inside SpringBoot 04:09
- 69 Demo of SpringBoot Autoconfiguration 11:42
- 70 Quick recap 05:08
- 71 Quick Tip - Mapping multiple paths inside Spring Web Application 13:12
- 72 Introduction to Thymeleaf 08:39
- 73 Building dynamic content using Thymeleaf 09:59
- 74 Disabling Thymeleaf template caching 07:04
- 75 Introduction to Spring Boot DevTools 07:38
- 76 Implemetation & Demo of Spring Boot DevTools 07:39
- 77 Building Home Page of EazySchool Web Application 07:24
- 78 Understanding the Home Page source code of EazySchool 05:56
- 79 Deep Dive of Spring MVC Internal architecture 12:28
- 80 Separation of Header and Footer code using Thymeleaf replace tag 08:15
- 81 Building Courses Web Page of Eazy School Web Application 12:08
- 82 Quick Tip - Resolving Build & Cache issues inside maven projects 02:13
- 83 Building About Page of Eazy School Web Application 06:48
- 84 Building Contact Page of Eazy School Web Application 05:26
- 85 Submit information from Contact page using @RequestParam 10:54
- 86 Submit information from Contact page using POJO object 08:31
- 87 Define actions for all the links in the Home & Footer page 06:19
- 88 Building Holidays Page of Eazy School Web Application 12:36
- 89 Introduction to Lombok library 07:00
- 90 Implementing Lombok inside Eazy School Web App 06:39
- 91 Demo of @Slf4j annotation from Lombok library 03:57
- 92 Accepting Query Params using @RequestParam annotation - Theory 08:47
- 93 Accepting Query Params using @RequestParam annotation - Coding 12:05
- 94 Accepting Path Params using @PathVariable annotation - Theory 05:23
- 95 Accepting Path Params using @PathVariable annotation - Coding 07:19
- 96 Importance of Validations inside Web Applications 12:00
- 97 Introduction to Java Bean Validations 10:10
- 98 Adding Bean Validation annotations inside Contact POJO class 10:14
- 99 Adding Bean Validation related changes inside EazySchool Web Application 12:17
- 100 Demo of Bean Validations inside Contact form Page 06:49
- 101 Introduction to Spring Web Scopes 07:02
- 102 Use Cases of Spring Web Scopes 09:27
- 103 Demo of @RequestScope inside Eazy School Web Application 06:32
- 104 Demo of @SessionScope inside Eazy School Web Application 06:29
- 105 Demo of @ApplicationScope inside Eazy School Web Application 05:48
- 106 Introduction to Spring Security 07:17
- 107 Deepdive of Authentication Vs Authorization 05:48
- 108 Demo of Spring Security inside Eazy School Web App with default behavior 06:28
- 109 Configure custom credentials inside Spring Security 04:29
- 110 Understanding default security configurations inside Spring Security framework 05:55
- 111 Configure permitAll() inside Web App using Spring Security 07:15
- 112 Configure denyAll() inside Web App using Spring Security 05:48
- 113 Configure custom security configurations using Spring Security 10:58
- 114 Demo of CSRF protection & CSRF Disable inside Spring Security framework 09:34
- 115 Configure multiple users using inMemoryAuthentication() of Spring Security 09:27
- 116 Implement Login & Logout inside Web App - Part 1 07:11
- 117 Implement Login & Logout inside Web App - Part 2 09:51
- 118 Implement Login & Logout inside Web App - Part 3 05:16
- 119 Demo of integration between ThymeLeaf & Spring Security 10:37
- 120 Introduction to @ControllerAdvice & @ExceptionHandler annotations 09:00
- 121 Demo of @ControllerAdvice & @ExceptionHandler annotations 10:43
- 122 Deep dive of CSRF attack 12:14
- 123 Solution for CSRF attack - Theory 10:22
- 124 Solution for CSRF attack - Coding 11:26
- 125 Introduction to in-memory H2 Database of Spring Boot 08:38
- 126 Setup H2 Database inside a Spring Boot web application 16:37
- 127 Introduction to JDBC & problems with it 09:42
- 128 Introduction to Spring JDBC 10:40
- 129 Deep dive on usage of JdbcTemplate 08:01
- 130 Saving Contact Message into DB using JdbcTemplate Insert operation 14:26
- 131 Display Contact messages from DB using JdbcTemplate select operation - Part 1 06:52
- 132 Display Contact messages from DB using JdbcTemplate select operation - Part 2 15:41
- 133 Update Contact messages status using JdbcTemplate update operation 09:41
- 134 Implementing AOP inside Eazy School Web Application 08:23
- 135 Display list of Holidays from H2 Database using JdbcTemplate 16:29
- 136 Setup MYSQL DB inside AWS - Part 1 08:28
- 137 Setup MYSQL DB inside AWS - Part 2 09:41
- 138 Migrate from H2 Database to MYSQL Database 09:09
- 139 Demo of MYSQL Database changes inside Eazy School Web App 09:39
- 140 Problems with Spring JDBC & how ORM frameworks solve these problems 06:08
- 141 Introduction to Spring Data 06:46
- 142 Deepdive on Repository,CrudRepository,PagingAndSortingRepository,JpaRepository 16:50
- 143 Introduction to Spring Data JPA 12:26
- 144 Migrate from Spring JDBC to Spring Data JPA - Part 1 11:07
- 145 Migrate from Spring JDBC to Spring Data JPA - Part 2 13:12
- 146 Migrate from Spring JDBC to Spring Data JPA - Part 3 08:28
- 147 Migrate from Spring JDBC to Spring Data JPA - Part 4 09:50
- 148 Deep dive on derived query methods inside Spring Data JPA 09:20
- 149 Introduction of Auditing Support by Spring Data JPA 12:50
- 150 Implement automatic auditing support with Spring Data JPA - Part 1 09:44
- 151 Implement automatic auditing support with Spring Data JPA - Part 2 07:41
- 152 Building new user registration web page inside Eazy School Web App 13:41
- 153 Building Custom validations for new user registration page - Part 1 08:34
- 154 Building Custom validations for new user registration page - Part 2 13:55
- 155 Building Custom validations for new user registration page - Part 3 07:48
- 156 Building Custom validations for new user registration page - Part 4 16:13
- 157 Creating new tables required for new user registration process 10:37
- 158 Spring Data JPA configurations for Person, Address, Roles tables and entities 08:13
- 159 Introduction to One to One Relationship inside ORM frameworks 06:50
- 160 Making One to One Relationship configurations inside entity classes - Theory 08:01
- 161 Deep dive on Fetch Types and Cascade Types in ORM frameworks 10:04
- 162 Making One to One Relationship configurations inside entity classes - Coding 17:23
- 163 Understanding Spring Security configurations for custom authentication logic 09:03
- 164 Implement Spring Security changes for custom authentication logic - Part 1 14:02
- 165 Implement Spring Security changes for custom authentication logic - Part 2 07:05
- 166 Problems with Authentication logic using plain text passwords 03:27
- 167 Deep dive on Encoding, Encryption and Hashing for password management 12:00
- 168 Deep dive on PasswordEncoder & BCryptPasswordEncoder 08:37
- 169 Implementing password hashing with BCryptPaswordEncoder - Part 1 14:17
- 170 Implementing password hashing with BCryptPaswordEncoder - Part 2 05:54
- 171 Quick Tip - To Disable the javax validations in Spring Data JPA 05:54
- 172 Displaying Profile link inside Dashboard web page 06:04
- 173 Displaying Profile Web Page on click of profile link in Dashboard 12:29
- 174 Fetch data from DB and display on the Profile web page 14:44
- 175 Save Address Data into DB from Profile Page 09:24
- 176 Introduction to new enhancements related to OnetoMany, ManytoOne & ManytoMany 02:19
- 177 Displaying Classes, Courses link inside Dashboard web page 07:57
- 178 Introduction to OneToMany & ManyToOne mappings 10:40
- 179 Implement OneToMany & ManyToOne configurations inside Entity classes 09:07
- 180 Displaying new Web Page on click of classes link in Dashboard 07:03
- 181 Add & Delete Classes enhancement inside Eazy School Web App 13:22
- 182 Display, Add & Delete Students enhancement inside Eazy School Web App - Part 1 14:17
- 183 Display, Add & Delete Students enhancement inside Eazy School Web App - Part 2 08:48
- 184 Introduction to ManyToMany relationship in ORM frameworks 12:54
- 185 Implement ManyToMany configurations inside Entity classes 11:01
- 186 Display & Add Courses enhancement inside Eazy School Web App - Part 1 08:36
- 187 Display & Add Courses enhancement inside Eazy School Web App - Part 2 10:46
- 188 Display & Add Students enhancement inside Course Web Page 11:21
- 189 Delete Student enhancement inside Course Web Page 06:03
- 190 Implement Student Dashboard related enhancements inside Eazy School Web App 14:43
- 191 Introduction to Sorting inside Spring Data JPA 06:57
- 192 Implement & Demo of Static Sorting 06:07
- 193 Implement & Demo of Dynamic Sorting 05:12
- 194 Introduction to Pagination inside Spring Data JPA 09:33
- 195 Implement & Demo of Pagination & Dynamic Sorting - Part 1 21:03
- 196 Implement & Demo of Pagination & Dynamic Sorting - Part 2 12:21
- 197 Introduction to custom queries using @Query,@NamedQuery,@NamedNativeQuery & JPQL 13:56
- 198 Writing Custom Queries using @Query Annotation 08:30
- 199 Writing Custom Update Queries using @Query,@Modifying,@Transactional Annotations 12:11
- 200 Deep dive on @NamedQuery,@NamedNativeQuery inside Spring Data JPA 05:46
- 201 Writing Custom Queries using @NamedQuery,@NamedNativeQuery Annotations 15:17
- 202 Introduction to REST Services 06:54
- 203 Build REST services using Spring MVC style & @ResponseBody annotation - Theory 05:42
- 204 Implement REST service using Spring MVC style & @ResponseBody - Part 1 08:41
- 205 Implement REST service using Spring MVC style & @ResponseBody - Part 2 08:27
- 206 Deep dive & Demo of @RequestBody annotation 10:03
- 207 Implement REST Services using @RestController annotation 03:43
- 208 Demo of save operation using Rest Service & ResponseEntity 13:47
- 209 Demo of delete operation using Rest Service & RequestEntity 06:19
- 210 Demo of update operation using Rest Service & recap of all Rest annotations 08:17
- 211 Implement global error logic for Rest Services using @RestControllerAdvice 06:51
- 212 Deep dive on CROSS-ORIGIN RESOURCE SHARING (CORS) & @CrossOrigin annotation 07:09
- 213 Sending Response in XML format in Rest Services 05:03
- 214 Demo of Content filter inside Rest Services using @JsonIgnore annotation 04:53
- 215 Introduction to Consuming Rest Services inside Web Applications 09:55
- 216 Consuming Rest Services using OpenFeign - Theory 10:01
- 217 Consuming Rest Services using OpenFeign - Coding 11:37
- 218 Consuming Rest Services using RestTemplate 14:33
- 219 Consuming Rest Services using WebClient 15:13
- 220 Introduction to Spring Data Rest & HAL Explorer 07:09
- 221 Deep dive of Spring Data Rest & exploring Rest APIs - Part 1 10:49
- 222 Deep dive of Spring Data Rest & exploring Rest APIs - Part 2 12:20
- 223 Exploring Rest APIs of Spring Data Rest using HAL Explorer 08:58
- 224 Securing Spring Data Rest APIs & HAL Explorer 03:43
- 225 Quick Tips around Spring Data Rest 06:43
- 226 Introduction to Logging inside SpringBoot 09:56
- 227 Logging configurations for SpringBoot framework code 07:35
- 228 Logging configurations for Application code 09:04
- 229 Store log statements into a custom file and folder 12:01
- 230 Introduction to Externalized properties inside SpringBoot Web Applications 06:39
- 231 Reading properties using @Value annotation 07:18
- 232 Reading properties using Environment interface 04:52
- 233 Reading properties using @ConfigurationProperties - Theory 10:40
- 234 Reading properties using @ConfigurationProperties - Coding 10:34
- 235 Introduction to Profiles in Spring 04:31
- 236 Implementation & Demo of Profiles inside Eazy School Web App 08:34
- 237 Various approaches to activate Profiles inside Spring 14:07
- 238 Creating beans conditionally based on active profile 06:27
- 239 Introduction to Spring Boot Actuator 03:56
- 240 Implement and Secure Actuator inside Eazy School Web App 06:39
- 241 Deepdive of Actuator endpoints 17:20
- 242 Exploring Actuator data using Spring Boot Admin 15:13
- 243 Introduction to Cloud Deployment, AWS EC2 & AWS Elastic Beanstalk 09:31
- 244 Packaging Spring Boot application for AWS Deployment 07:04
- 245 Deploying Spring Boot app into AWS Elastic Beanstalk 11:27
- 246 Switching DB inside AWS Elastic Beanstalk 08:27
- 247 Deleting AWS Beanstalk & DB resources 03:06
- 248 Thank You & Congratulations 02:32
Related courses
-
ClassicMaster Spring Boot 3 & Spring Framework 6 with Java
By: UdemyThis is THE COURSE you need to learn everything you need to know about building real world Java applications and deploying them to the cloud using Spring and.37 hours 34 minutes 14 seconds 5 / 5 -
Updated 2y agoGo Full Stack with Spring Boot and React
By: UdemyWelcome to this Amazing Course on Full Stack Web Development with React and Spring Boot. This course is designed to be a Perfect First Step as an Introduction t11 hours 43 minutes 36 seconds 5 / 5 -
Updated 2y agoLearn Spring 5 and Spring Boot 2
By: BaeldungSpring is, by far, the most popular framework for application development in the Java ecosystem. By a wide margin. The reason is actually quite simple - it does4 hours 57 minutes 32 seconds