Updated to Spring Boot 3.x+ and Java 17+
The Confident Spring Professional
Learn to find your way around the Spring Ecosystem. Go from not knowing where to start to having a good understanding of Spring Framework, Spring MVC, Spring & Databases and - of course - Spring Boot, without having to fall back on constantly copying someone else's code.
Preview Access: Login through the form below to get free access to the full first module of the course: Java Webapps without Spring.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.
Or buy now if you're already convinced!
Featuring Interviews With:
- Michael Simons (Neo4j & EuregJUG)
- Simon Martinelli (JCP Member & Professor)
- Philip Riecks (ImmoScout24)
- Marten Deinum (Consultant & Author)
- Siva Prasad (Software Engineer & Author)
- Maciej Walkowiak (Spring Academy)
- Oliver Drotbohm (Pivotal & Java Champion)
"I get the job done with Spring Boot, but never understand why things work."
Sure, you can follow most beginner tutorials about Spring Boot, copy & paste some code and pump out REST services in no time.
But after a while, doubts usually start creeping in:
"I go to Spring's documentation, StackOverflow, other tutorials and copy & paste those code examples...however, I feel like I never really understand how things work."
"I just slap Spring annotations on classes and then magically stuff happens in various places and times."
"I've been building applications with Spring for years and still feel lost a lot of the time."
The problem: Simple tutorials are fine for learning the basics, but they don't make you really understand how things work under the hood and the reasons behind what you do.
I've spent the last 10 years building applications within an ever-expanding Spring ecosystem; piecing together things from every resource I could get my hands on to really understand Spring's magic; learning how all the different Spring projects and modules fit together in one big ecosystem.
The Confident Spring Developer is the course I wish I'd had.
What You'll Learn
This course is built to give you a comprehensive understanding of the Spring ecosystem.
It is not just about what and how to do something with Spring, but about why to do something, discussing different solutions to the same problems and how everything fits together in the Spring ecosystem.
Here is the high-level overview (see full table of contents here):
Plain Java Web Apps without Spring
To understand what Spring brings to the table, you'll first learn how to write modern, minimalistic web apps with plain Java. You'll just need a couple of tools.
Java 11(-21)
and an embeddedTomcat
.Maven
as build tool to produce an executable .jar-file, similar to Spring Boot.
The project you build during this module is the foundation for the rest of this course.
Spring IoC Basics
You will get a deep-dive into core Spring concepts:
- In-depth coverage of how Spring's
Dependency Injection container
works and what problem it solves. - How Spring's
environment support
helps you work with properties and different stages (dev, prod).
You will start 'springifying' the project from the previous module.
Spring WebMVC
After understanding core Spring concepts, it is time for you to meet Spring's web framework,
called Spring WebMVC
and learn how it powers literally every existing Spring
Boot
application.
It's all about:
- Building JSON/XML
REST services
with Spring. - Building server-side rendered,
dynamic HTML pages
with Spring and additional templating libraries.
Spring & Databases
Powering your web application with a database is the next major step. Hence, you'll learn the most popular ways of accessing and querying databases with Spring.
- Low-level database access with
JdbcTemplate
,DataSources
and embedded databases. - Higher-level database access with Spring Data JDBC.
- An introduction to database transactions with
@Transactional.
Spring Boot
After you learned the foundations of the Spring ecosystem, it is time to get a comprehensive look into Spring Boot, not just quickly build a new project with it.
- You will learn exactly how, when and why Spring Boot leverages all the core Spring
concepts you learned earlier in this course to understand what
opinionated Spring
really means. - You will get a crash course of Spring Boot internals, i.e.
AutoConfigurations
and also build your own AutoConfigurations.
You can check out the full table of contents here:
How you'll learn
Incremental Learning Path
This course consists of several modules, that are structured along a carefully constructed, incremental learning path through the Spring ecosystem.
Every lesson builds on top of the previous lesson and you will work through them in order.
Instead of starting out immediately with Spring Boot, you will tackle the Spring Ecosystem in reverse: From building (web) applications with plain Java, over to core Spring concepts (DI, MVC, Databases), to eventually Spring Boot.
This will make sure you always have all the knowledge needed to proceed with the course.
Learning-By-Doing
Instead of making you watch endless hours of video, every lesson consists of crispy & detailed explanations including detailed code examples of a project that you are building throughout the course.
You are expected to follow along with your own IDE to finish off the checkpoints in each lesson and bring your project to production.
At every point in time, you will have a fully working, executable .jar file - incrementally enhanced in every module with new Spring concepts.
Additional Exercises & Sources
Every module ends with its own set of exercises, that make you drill-in the concepts you learned throughout the module on a completely separate project.
In addition, you'll find links to the source code for the course project, as well as to the solutions to the exercises.
Hard Facts
Course Duration
It takes developers, who have a couple of years experience with Spring's magic, between 10-20 hours to finish the core course, longer if you diligently work on the exercises or study the videos.
Raw study time, however, is a poor measurement. This course gives you maximum, hands-on Spring knowledge, in the least amount of time, through dead-simple explanations.
Always Up To Date
The course is regularly updated to reflect the latest Spring, Spring Boot & Java versions.
As of May 2023, it covers (up to) Spring Boot 3.x+, Spring Framework 6.x+, as well as Java 11-21.
Watch a Screencast
The Confident Spring Developer optionally comes with 13 exclusive video lessons showing IDE work, shortcuts and development workflow for the course modules.
The videos are not recordings of the course modules, they rather teach you professional tricks & best practices when working with IntelliJ IDEA on the course project.
Video Lessons
Creating Maven Projects
Using Language Fragments
Top-Down Workflow
IDE Refactorings: Moving
@ComponentScan Mistakes
@PreDestroy in IDEs
@Profiles in IDEs
Postman REST Client
Analyzing Stacktraces
Using embedded H2 DBs
Using Spring Initialzr
Using Maven Wrapper
Creating Spring Boot AutoConfigurations
What People Are Saying
Hey @MarcoBehler I really loved your Confident Spring Professional course. I think it was pretty concise and right to the point. I think some other courses are bogged down too much by excess configuration details.
— Fred Ma (@FredMa7153) September 3, 2022
Hey @Marcobehler, I absolutely loved your Confident Spring Professional course. I learned a lot from it. Thanks! https://t.co/DBfhy16qo0 #springframework #springboot
— Darek Mydlarz ?? (@darekmydlarz) August 16, 2022
Hey @MarcoBehler from Turkey ✌️
— halil (@anonimalan) August 25, 2021
Thanks to you, I got a full-time job yesterday without even completing 30% of your "The Confident Spring Professional" course. I will complete the rest as soon as possible. ??#springframework #Spring #Springboot https://t.co/VNFoOpU612
Hey @Marcobehler, I absolutely loved your Confident Spring Professional course. I learned a lot from it. Thanks! https://t.co/OdOgeGxpeC #springframework #springboot
— shawn (@xiaojichao) August 24, 2021
What I like about @MarcoBehler's https://t.co/AdDpBODF7l is that it literally explains every step of the way, every line of code.
— Octavian NITA (@octavian_t_nita) October 5, 2020
Hey @MarcoBehler, thank you for your awesome course on Spring. I really appreciate guides that start from the fundamentals and build incrementally. Feeling a lot more confident now to dive deeper into the Spring ecosystem ?
— Dan Popescu (@DanDPopescu) August 14, 2020
@MarcoBehler's https://t.co/oPlTqynrul is an awesome intro to Spring. As a software test pro, this course gave me a deeper understanding of how Spring works under the hood. Marco's effort and enthusiasm about the topic shows on every module. Highly recommended!
— Ricardo Mediavilla Maldonado (@RicardoMediavi2) April 19, 2020
For all of you Java developers out there, I can't recommend you enough the spring-professional course from @MarcoBehler I really like its format: starting from the very bare bones of web development with Java, using the servlets API, all the way up to a Spring application.
— Daniel Plucenio (@DPlucenio) October 11, 2021
I really enjoyed working with your Learning Spring course @marcobehler! Especially the structure and the level of detail of your course is excellent. You really focus on educating your reader to fully understand the value and relationship of the Spring Framework and Spring Boot.
— Philip Riecks (@rieckpil) March 1, 2020
@MarcoBehler loved your spring course, from servlets and building your own dependency injection to using spring boot in production.
— Aristotelis Christou (@aristotelis_ch) February 29, 2020
The course helped distill a lot of concepts that spring boot does out of the box for you. Well done.
This is by far the most comprehensive course of Spring, Spring Boot, @MarcoBehler really raised the bar, https://t.co/WjvUcN5fwc
— Luis Cañibe (@jlcanibe) February 25, 2020
If you ever want to learn the internals of the Spring framework/Spring Boot. I highly recommend "Learning Spring" https://t.co/rbpznc1Vme course by @MarcoBehler. I like the step by step approach to cover the broad ecosystem of the framework and how everything works together.
— Anbu Sampath (@anbusampath) February 25, 2020
Get The Confident Spring Developer
Choose the package that works for you.
The Essentials
$148 USD
- Instant access to the private course area.
- 8 Modules with over 60 lessons including interactive code examples and exercises.
- Full GitHub source code access
The Complete Package
$181 USD
- Instant access to the private course area.
- 8 Modules with over 60 lessons including interactive code examples and exercises.
- Download 13 exclusive video lessons.
- Cast votes on and get early access to future modules of the course.
- Full GitHub source code access
Buying for your team? View team pricing options.
Frequently Asked Questions
I am completely new to Java and/or object-oriented programming. Is this course for me?
If you do not know how to program yet, you won't be able to follow this course. The lessons assume you understand object-oriented programming.
If you are coming from another JVM language (Kotlin, Scala etc.), you will be able to finish this course easily. You can even choose to work through the course with your preferred language.
If you are coming from another programming language, like PHP, Ruby, Python and have worked on web applications before, you should be able to follow along - though in this case, I recommend you to actually finish every module twice, for a better learning effect.
The prerequisites in any case: Have a recent Java JDK (11+), Maven and an IDE/code editor of your choice installed.
What if I have been working with Spring for a while, already?
The majority of the course material is from corporate trainings I gave over the last couple of years to a variety of developers with different Spring skill levels.
I got the same feedback every time from senior developers already used to working with Spring: That the course expanded their Spring knowledge a lot.
Will you be available if I get stuck?
My priority is for you to succeed and really understand Spring, so when you have specific questions about understanding and applying what you're learning, I'll do my best to help!
But to keep expectations clear, enrolling in the course does not turn me into a 24/7 programming coach. If you email me for help, I ask that you're respectful of my time and more importantly, that you're actually doing the work and not just asking questions to avoid the work. :)
Can I upgrade to the complete package later?
Of course. Simply log in, go to the course homepage and you'll find a button to upgrade.
Are the videos useful if I am not using IntelliJ IDEA?
Around half of the videos are specific to workflows in IntelliJ. While the general principles also apply to other IDEs like Eclipse and Netbeans, you will not get the full value out of those videos if you are not using IntelliJ.
Does the course get updated regularly?
Yes, the course is updated 1-2 times a year, with revised or new modules.
Can I pay with PayPal?
You can either pay with a credit card (Visa, Mastercard, American Express), PayPal or AliPay.
Can I get an invoice?
Absolutely! Just reply to your purchase confirmation email (subject: "need invoice") and you'll get a tax invoice for your accounting purposes.
What if I decide it's not for me?
No worries. Send me an email (marco@marcobehler.com) for up to 21-days after purchase and I'll refund you the full price without any hard feelings.
Can I purchase multiple licenses for my team at a reduced price?
Yes! Here's what I've got for (company) team pricing:
I have another question!
Sure! Shoot me an email at marco@marcobehler.com and let's chat!
About Me
Hey! I'm Marco and I share everything I know about making awesome Java software through my guides, screencasts, talks and .
Follow me on Twitter to get in touch.