Java Spring Tutorial Masterclass - Learn Spring Framework 5
There is no doubt that having Spring Framework skills on your résumé will make you a more employable Java developer. Spring developers are in high demand and are paid handsomely. However, the framework is huge. That’s because it consists of lots of modules and projects. Learning it can take you months. You will often find that a Java Spring tutorial or training course will focus on parts of the framework that don’t get used that much.
More
What Spring technologies should you focus on initially?
Many Java spring courses teach you all sorts of things you really don’t need to know when you are starting out.
If you are just starting out with Spring, the areas that will have the biggest impact for you are Spring Core, Spring MVC and Spring Boot 2.
Spring Core is an application framework and inversion of control (ioc) container for the java platform.
Spring MVC, or Spring Web MVC to be more precise is a web framework and provides Model View Controller architecture. It’s built around a DispatcherServlet.
Spring Boot 2.0 is a way to create standalone Spring based Applications that you can just run – so it simplifies the entire process of creating and deploying Spring apps – It can embed databases and do all sorts of configuration automatically.
These three areas are a great place to start – just having these skills will take you a long way. Of course, there is more to learn, but these are the areas to focus on initially.
Why this course is perfect if you want to learn Spring 5 fast.
Firstly, here are some comments about the course.
"Great and deep understanding of Spring in this course. Perfect speed, new technologies, and explanation of every detail. " - Arkadiusz Siry
"Amazing.Very good instructions" - Emmanuel Akono Sarsah
Check the reviews for more - This is one of the highest rated Spring courses on Udemy.
A Java Spring tutorial needs to teach you the core technologies listed above as an absolute minimum. This course will get you up to speed with those technologies.
Having good knowledge of a Java template engine that works with the Spring 5 framework, and a detailed understanding of the build tools (for building single and multi module projects) is highly desirable.
We’ve added comprehensive training for Thymeleaf 4 as well as Maven 3 in the course to give you those skills.
This content is ready for you to get started with today. We’ve been working hard on some final training that we believe will round out a Spring developers skills perfectly.
The final content we are in the process of adding to the course now is for Gradle (another build tool), Spring Data (provides access to persistence stores), JPA (Java Persistence Layer), Hibernate (Object Relational Mapping tool) and database versioning (like source control but for databases).
This content will be provided to existing students in the course for free in the coming weeks.
Bonus Free Spring training
Our original course was released with Spring 4 which was the current version at the time – we created a course around that, using the Eclipse editor.
Unlike other Udemy Spring courses, we completely upgraded the content to Spring 5 – We re-recorded what is effectively a brand new course for Spring 5 using JetBrains award winning IntelliJ IDEA and released if free to existing students.
This older content is still available for you to access after you have been through the brand new training – It’s still useful as some companies still use Spring 4 technology.
What skills do you need to take the course?
This course is for anyone who wants to get into Spring framework programming. We assume you have never used Spring previously.
Any Java Enterprise edition (Java EE) technology requires you to know at least some Java programming. That’s because Java EE is built on top of the Java Standard Edition (Java SE). That’s the regular Java language.
The Spring Framework is built on top of Java EE, and thus you need to have some basic Java programming skills to be able to go through this course.
If you’ve been through at least some of the Java Masterclass on Udemy (created by one of the instructors in this course) or similar Java training, then you will have no problem going through the course.
Who are the instructors?
Your instructors are Tim Buchalka and Goran Lochert. Both have many years of commercial programming experience using the technologies taught in the course.
Tim has been working with Java for 18 years, and Goran is both Spring certified and Oracle Java certified.
They have a number of very successful Udemy courses, including Tim’s Java Masterclass and Goran’s Oracle Java Certification course.
Here’s what’s important. There’re lot of people teaching Spring who are not developers. We’re developers with many years’ experience with JEE and Spring, who also teach Spring.
And you guessed it. Learning Spring the “wrong way” is not only a wasted opportunity, it may harm your career in the long run. If you don’t follow industry best practices when creating Spring projects, you not going to fit in well with a future employer.
Because you are working with career professional developers, you will learn Spring 5 the right way in this course.
What if you have questions?
As if this course wasn’t complete enough, we offer full support, answering any questions you have 7 days a week (whereas many instructors answer just once per week, or not at all).
This means you’ll never find yourself stuck on one lesson for days on end. With our hand-holding guidance, you’ll progress smoothly through this course without any major roadblocks.
That’s just one reason why Tim was voted top 10 in the Udemy instructor awards (out of a whopping 18,000 instructors), and quickly became a top-rated, bestselling instructor on the Udemy site.
Student Quotes: “I loved the course because the instructor was really good and explained everything + the support team is really quick in answering our questions the course is worth buying, and i would suggest people to buy it.” –Hamza Shahid
- You’ve either already got it or it’s FREE. Here’s the checklist:
- A computer - Windows, Mac, and Linux are all supported. Setup and installation instructions are included for each platform.
- Your ENTHUSIASM to learn the worlds #1 web framework, and then to showcase it on your RESUME!
- Everything else needed to start programming in the Spring Framework is already included in the course.
Who this course is for:
- The course is 100% for you if you’re wanting to become a Spring programmer!
- However, if you’re already an expert Spring programmer with years of experience and knowledge of all the latest updates, then this course is not for you.
- You should at list some basic Java knowledge Java experience - check out the Java Masterclass on Udemy if you need those skills.
What you'll learn:
- Be able to apply in confidence for Spring developer jobs.
- Master the core skills needed to become a Spring Framework developer.
- Obtain the skills to create your own Spring 5 projects.
- Confidently be able to transition to other Java EE technologies.
- Learn industry "Best Practices" for Spring 5 development from professional developers.
- Have the ability to demonstrate your knowledge of Spring Framework development.
- Understand core technologies like Spring Core, Spring MVC, and other technologies.
- Know how Spring fits in the Java Enterprise Edition (Java EE) space.
Watch Online Java Spring Tutorial Masterclass - Learn Spring Framework 5
# | Title | Duration |
---|---|---|
1 | Introduction | 02:42 |
2 | Which Version Of Java? | 04:34 |
3 | Installing JDK 11 on Windows | 05:42 |
4 | Installing and Configuring IntelliJ IDEA on Windows | 10:31 |
5 | Installing JDK 11 on a Mac | 02:47 |
6 | Installing and Configuring IntelliJ IDEA on a Mac | 11:14 |
7 | Installing JDK 11 on a Linux Machine | 07:21 |
8 | Installing and Configuring IntelliJ IDEA on a Linux Machine | 11:38 |
9 | Your Programming Careers Questions Answered | 01:54 |
10 | Spring 5 Feature Overview | 02:09 |
11 | Maven and Other Tools | 04:14 |
12 | Creating a Maven Project | 06:32 |
13 | Importing Maven Projects | 01:57 |
14 | Maven Lifecycle Plugin and Goals | 04:06 |
15 | Fix our Maven Project | 09:51 |
16 | What is Logging? | 07:06 |
17 | Using Logging with Logback | 13:22 |
18 | Logback Configuration | 16:19 |
19 | Project Overview | 04:13 |
20 | Create Multi Module Project | 08:30 |
21 | Project Setup | 14:31 |
22 | Using a Spring Container | 17:13 |
23 | Implementing the Game | 12:16 |
24 | Constructor Based Dependency Injection | 07:51 |
25 | Setter Based Dependency Injection | 03:45 |
26 | Setter or Constructor | 04:49 |
27 | Using Bean Lifecycle Callbacks | 13:13 |
28 | XML or Annotation Configuration | 05:54 |
29 | Autowiring Beans | 09:59 |
30 | Beans as Components | 08:35 |
31 | Using Java Annotation Configuration | 09:55 |
32 | Message Generator Challenge | 10:03 |
33 | Implementing MessageGenerator Logic | 06:02 |
34 | Console Module Setup Challenge | 10:56 |
35 | Application Events | 08:19 |
36 | Finish Game Logic | 07:20 |
37 | Using Qualifiers | 11:50 |
38 | Creating Custom Annotations | 06:29 |
39 | Using Properties | 10:47 |
40 | minNumber Challenge | 09:12 |
41 | Code Cleanup and Constructor Injection | 10:18 |
42 | Code Cleanup Challenge | 08:25 |
43 | Lombok Introduction | 05:16 |
44 | Setup Lombok | 13:15 |
45 | Using Lombok | 06:00 |
46 | Lombok Challenge | 03:21 |
47 | Spring MVC Introduction | 02:52 |
48 | Creating todo List Project | 01:38 |
49 | Project Setup Challenge | 11:18 |
50 | Setup Maven War Plugin | 09:47 |
51 | Setup Maven Cargo Plugin and Tomcat | 08:10 |
52 | Setup Dispatcher Servlet | 15:51 |
53 | Simple Controller | 11:35 |
54 | View Resolver and View | 13:55 |
55 | Spring MVC Request Processing | 03:13 |
56 | Model and Model Attributes | 11:06 |
57 | Simple Service Challenge | 10:35 |
58 | Request Parameters | 08:25 |
59 | Project Requirements | 01:40 |
60 | ToDo Item Class | 09:20 |
61 | ToDo Data Class | 14:49 |
62 | Creating the Todo Item Controller | 08:39 |
63 | Creating View and Basic JSTL tags | 10:16 |
64 | Todo Item Service Challenge | 11:19 |
65 | Implementing the Add Item Feature | 11:39 |
66 | Implementing Post Redirect Get Pattern | 09:29 |
67 | Home View and Navigation | 17:56 |
68 | Delete Item Challenge | 04:49 |
69 | Implement Edit Item Feature | 12:03 |
70 | View Item Challenge | 11:18 |
71 | Introduction to Spring Boot 2 | 02:06 |
72 | Using Spring Initializr | 05:28 |
73 | Understanding Spring Boot Project Structure | 09:25 |
74 | Simple Spring Boot Application | 19:03 |
75 | Add Spring Boot to an Existing Project | 16:11 |
76 | Spring Boot Web Module | 08:06 |
77 | Thymeleaf Introduction | 02:26 |
78 | Setup Thymeleaf and Initial Template | 13:32 |
79 | Spring Boot Developer Tools | 08:22 |
80 | Game Service Challenge | 09:33 |
81 | Play Thymeleaf Template | 18:22 |
82 | Thymeleaf Preprocessing | 12:20 |
83 | Thymeleaf Template Challenge | 13:48 |
84 | Thymeleaf Fragments | 13:24 |
85 | Thymeleaf Fragment Challenge | 05:56 |
86 | Thymeleaf Decoupled Template Logic | 17:33 |
87 | Thymeleaf Decoupled Template Logic Challenge | 15:11 |
88 | Bug Fixes | 01:18 |
89 | Spring Internationalization | 24:27 |
90 | Thmyeleaf Internationalization Challenge | 14:28 |
91 | Message Generator Internationalization Main Message | 09:45 |
92 | Message Generator Internationalization Result Message | 12:25 |
93 | Request Interception | 13:27 |
94 | Locale Change Interceptor | 08:12 |
95 | Thymeleaf Recap | 04:06 |
96 | What is Gradle? | 03:27 |
97 | Creating a Gradle Spring Boot Project | 05:45 |
98 | Gradle Build Lifecycle Projects and Tasks | 02:25 |
99 | Understanding the Gradle Scripts | 06:49 |
100 | Running Gradle Tasks | 06:33 |
101 | Simple Spring Gradle Application | 06:35 |
102 | Creating a Spring Boot Project Challenge | 05:57 |
103 | Configure Gradle Multi-module Project | 15:09 |
104 | Configure Sub Modules | 08:19 |
105 | Testing our Project | 07:44 |
106 | More Content | 00:49 |
107 | Install JDK for Windows | 05:16 |
108 | Install Eclipse for Windows | 07:55 |
109 | Install Tomcat for Windows | 06:30 |
110 | Configure Tomcat Within Eclipse for Windows | 08:15 |
111 | Install JDK for Mac | 02:45 |
112 | Install Eclipse for Mac | 07:35 |
113 | Install Tomcat for Mac | 06:06 |
114 | Configure Tomcat Within Eclipse for Mac | 06:43 |
115 | Install JDK for Linux | 04:21 |
116 | Install Eclipse for Linux | 08:32 |
117 | Install and Configure Tomcat for Linux | 09:14 |
118 | Introduction to JEE | 05:35 |
119 | Exploring Java EE basics: Drilling into the Concepts | 09:19 |
120 | Exploring Java EE basics: Building the Servlet | 09:51 |
121 | Exploring Java EE basics: Creating a JSP and running the App | 11:39 |
122 | Exploring Java EE basics: Adding a Service layer to the mix | 09:25 |
123 | Exploring Java EE basics: Adding JSTL Library Support | 06:09 |
124 | Exploring Java EE basics: JSTL in JSP | 06:41 |
125 | Overview of Spring Tooling | 06:13 |
126 | Install Spring IDE | 04:14 |
127 | Installing Maven | 05:01 |
128 | Creating a Maven Project | 12:45 |
129 | Understanding the Project Object Model | 14:03 |
130 | Why Spring | 03:35 |
131 | Overview of the Spring Framework | 06:36 |
132 | Spring Framework vs JEE | 09:43 |
133 | Introducing the Spring IoC container | 10:57 |
134 | Spring IoC container: Accessing metadata from the file system | 14:20 |
135 | Spring IoC container: Accessing metadata from the classpath | 09:22 |
136 | Spring IoC Container Challenge | 12:27 |
137 | Setting Constructor Arguments using the Spring bean config file | 17:58 |
138 | Setting Properties using the Spring bean config file | 12:58 |
139 | Setter based Dependency Injection in Spring | 09:47 |
140 | Setter based Dependency Injection in Spring continued | 08:22 |
141 | Spring Setter based Dependency Injection in Spring : Running the App | 11:26 |
142 | Constructor based Dependency Injection in Spring | 16:06 |
143 | Spring Constructor based Dependency Injection : Running the App | 10:09 |
144 | Creating Spring MVC Project Infrastructure | 10:13 |
145 | Adding dependencies in an alternative way in a Spring MVC Project | 08:14 |
146 | Adding Spring MVC Dispatcher Servlet | 13:22 |
147 | Building the Spring Controller - "C" part of MVC | 10:27 |
148 | Context and MVC Configuration | 05:15 |
149 | Autowiring collaborating objects in Spring | 07:50 |
150 | Bringing View Resolver in the mix and running the App | 12:30 |
151 | Bean scopes for a Spring Bean | 03:12 |
152 | Spring bean scopes: Singleton and Prototype | 10:47 |
153 | Spring bean scopes, Request and Session: creating the project and Java classes | 10:01 |
154 | Spring bean scopes, Request and Session: creating the config file and Controller | 07:47 |
155 | Spring bean scopes, Request and Session: Running the App | 08:48 |
156 | Customize Spring Bean with Callbacks | 11:20 |
157 | Standard Naming for Spring Bean Callbacks | 09:04 |
158 | Spring Bean instantiation using Static Factory and Instance Factory methods | 12:04 |
159 | Spring Bean Definition with C Namespace | 16:51 |
160 | Spring Bean Definition with P Namespace | 07:43 |
161 | Pros and Cons of Spring Configuration : Annotations vs XML | 07:24 |
162 | Autowiring Spring Beans: creating project infrastructure | 12:05 |
163 | Autowiring Spring Beans: using setters, constructors and fields | 12:11 |
164 | Spring Beans as Components: Cutting down on xml config | 08:19 |
165 | Handling Properties in Spring: using XML config | 12:20 |
166 | Handling Properties in Spring: mixing XML with Annotations | 10:35 |
167 | Handling Properties in Spring using pure Annotations: creating infrastructure | 13:34 |
168 | Handling Properties in Spring using pure Annotations: building and running the a | 12:28 |
169 | Install MySQL for Windows | 15:01 |
170 | Install MySQL on Mac | 12:18 |
171 | Install MySQL on Linux | 11:08 |
172 | MySQL Workbench Basics : Environment and table creation | 11:14 |
173 | MySQL Workbench Basics : Insert and Export | 10:47 |
174 | Introduction to Spring JDBC | 05:17 |
175 | CRUD with Spring JDBC Template: Project Setup | 14:54 |
176 | CRUD with Spring JDBC Template: Creating DAO Layer | 12:18 |
177 | CRUD with Spring JDBC Template: XML config & Property file | 14:17 |
178 | CRUD with Spring JDBC Template: More with DAOs | 17:58 |
179 | CRUD with Spring JDBC Template: DAO and Test Harness | 16:08 |
180 | CRUD with Spring JDBC Template: Building App and executing Test Harness | 10:26 |
181 | CRUD with Spring JDBC Template: Expanding DAO Layer further | 15:33 |
182 | Spring JDBC Exceptions : an Overview | 10:07 |
183 | Spring Named Parameters Template: Understanding the API | 10:38 |
184 | Spring Named Parameters Template: Building the DAO | 12:40 |
185 | Spring Named Parameters Template : Components and Testing | 08:58 |
186 | Spring Java Config: Creating the project infrastructure | 13:00 |
187 | Spring Java Config: Creating the Java and Web Configuration | 15:27 |
188 | Spring Java Config: Running the App | 06:59 |
189 | Fix minor error in WebMvcConfig | 04:12 |
190 | JNDI Datasource: Building the Spring Service and Controller | 14:35 |
191 | JNDI Datasource: Conceptual Overview and Configuration | 13:57 |
192 | JNDI Datasource: Building views and Running the App | 17:14 |
193 | Spring MVC Architecture Going Deeper | 06:41 |
194 | Spring Handler Mapping Customization: Creating the infrastructure | 16:21 |
195 | Spring Handler Mapping Customization: Seeing the effect of customization | 13:51 |
196 | Spring Interceptors: an Introduction | 13:40 |
197 | Spring Interceptors: Integrating and building views with CSS inline styling | 14:38 |
198 | Spring Interceptors: Continuing building the views with CSS Internal styling | 14:32 |
199 | Spring Interceptors: Continue building views with mixed styling | 12:31 |
200 | Spring Interceptors: Running the app with a closing summary | 12:27 |
201 | Introducing Logging | 08:08 |
202 | Logging: Working with SLF4J, a powerful logging API | 11:15 |
203 | Logging: LOG4J implementation and introducing Logger, Appender and Layout | 10:00 |
204 | Logging: Continuing with log4j and getting to know Conversion Patterns | 15:01 |
205 | Logging: Configuring log4j.properties and wrapping up | 10:20 |
206 | Spring Interceptors: Invoking all the Interceptor methods | 11:46 |
207 | Spring Interceptors: Running the app and wrapping up! | 09:53 |
208 | Section Overview | 01:52 |
209 | RequestMapping and RequestParams In-depth : Introduction & test harness | 11:33 |
210 | RequestMapping and RequestParams In-depth : Class level mapping | 13:12 |
211 | RequestMapping and RequestParams In-depth : Wrapping up first test | 08:11 |
212 | RequestMapping and RequestParams In-depth : method attribute & fallback | 12:41 |
213 | RequestMapping and RequestParams In-depth : defaultAttribute and default naming | 09:08 |
214 | RequestMapping and RequestParams In-depth : resolving ambiguous request mapping | 15:46 |
215 | RequestMapping and RequestParams In-depth : multiple request mapping | 14:05 |
216 | Model Attributes on Methods in-depth: Adding multiple attributes | 18:30 |
217 | Model Attributes on Methods in-depth: working with 'name' attribute | 09:00 |
218 | Model Attributes on Methods in-depth: working with 'value' attribute | 10:13 |
219 | Model Attributes on Methods in-depth: working with ModelAndView API | 10:09 |
220 | Model Attributes on Methods in-depth: Introducing Spring Form Tag and Elements | 19:57 |
221 | Model Attributes on Methods in-depth: Exploring ModelAndView API | 12:52 |
222 | Model Attributes on Methods in-depth: Default data binding | 07:39 |
223 | Model Attributes on Methods in-depth: Implicit resolution of logical view name | 10:11 |
224 | Session Attributes: Creating the project infrastructure | 19:17 |
225 | Session Attributes: Bringing in the Controller | 19:34 |
226 | Session Attributes: Adding the JSPs | 16:42 |
227 | Session Attributes: Cranking the Java configuration | 15:57 |
228 | Session Attributes: Testing our application | 15:49 |
229 | Session Attribute & Request Attribute: an Introduction | 06:12 |
230 | Session Attribute & Request Attribute: Applying to Interceptor and Controller | 15:22 |
231 | Session Attributes, Session Attribute & Request Attribute: Testing all | 12:14 |
232 | Spring Form Tags: An Overview | 08:09 |
233 | Spring Form Tags: Creating project infrastructure - part 1 | 11:59 |
234 | Spring Form Tags: Creating project infrastructure - part 2 | 09:54 |
235 | Spring Form Tags: SELECT tags - part 1 | 22:39 |
236 | Spring Form Tags: SELECT tags - part 2 | 10:48 |
237 | Spring Form Tags: SELECT tags - part 3 | 17:12 |
238 | Spring Form Tags: CHECKBOX tags - part 1 | 15:59 |
239 | Spring Form Tags: CHECKBOX tags - part 2 | 14:38 |
240 | Spring Form Tags: CHECKBOX tags - part 3 | 07:49 |
241 | Spring Form Tags: CHECKBOXES tags | 11:00 |
242 | Spring Form Tags: RADIOBUTTON & RADIOBUTTONS tags | 17:03 |
243 | Spring Form Validation: an Introduction | 05:12 |
244 | Spring Form Validation: Creating the project Infrastructure | 19:49 |
245 | Spring Form Validation: Creating the JSPs | 21:02 |
246 | Spring Form Validation: Running the first validation test | 09:42 |
247 | Spring Form Validation: Working with @Size and @Notblank validations | 07:59 |
248 | Spring Form Validation: Introducing Custom Validation Constraints | 07:28 |
249 | Spring Form Validation: Creating our first Custom Validation Constraint | 18:08 |
250 | Spring Form Validation: Regular Expression Validation | 13:18 |
251 | Spring Form Validation: Using Apache Commons API Validator | 14:01 |
252 | Spring Form Validation: Class Level Validation | 15:39 |
253 | Spring Form Validation: Final Changes and Test | 13:37 |
254 | IntelliJ Spring Config and Test Import | 18:09 |
255 | Import Non Web Based Project | 08:34 |
256 | Build Spring MVC Demo | 11:25 |
257 | Controller Service and JSP | 09:49 |
258 | Welcome Service and Add Beans | 09:27 |
259 | Which version of Java should you use? | 05:17 |
260 | How To Install The Java Development Kit (JDK) For Windows | 04:49 |
261 | Download and Install IntelliJ (FREE and PAID version) for Windows | 09:54 |
262 | How To Install The Java Development Kit (JDK) For Mac OS X | 02:20 |
263 | Download and Install IntelliJ (FREE and PAID version) on a Mac | 09:41 |
264 | How To Install The Java Development Kit (JDK) For Ubuntu Linux | 04:37 |
265 | Install and Configure IntelliJ (FREE and PAID version) for Ubuntu Linux | 09:40 |
266 | Bonus Lecture and Information | 04:49 |