Building Real-World Java Applications with Spring and Beyond
Keep adding new skills with 10,000+ programs for $239 (usually $399). Save now.
Building Real-World Java Applications with Spring and Beyond
This course is part of Learn Java from Scratch - A Beginner's Guide Specialization
Included with
Ask Coursera
Recommended experience
Recommended experience
What you'll learn
Learn to build dynamic Java applications with Spring Framework and Spring Boot
Master Spring’s dependency management and bean configuration techniques
Gain hands-on experience building REST APIs and integrating databases with Spring Data JPA
Understand advanced Spring concepts like bean scopes, lifecycle, and Jakarta EE integration
Skills you'll gain
Tools you'll learn
Details to know
See how employees at top companies are mastering in-demand skills
Build your subject-matter expertise
- Learn new concepts from industry experts
- Gain a foundational understanding of a subject or tool
- Develop job-relevant skills with hands-on projects
- Earn a shareable career certificate
There are 10 modules in this course
This course features Coursera Coach!
A smarter way to learn with interactive, real-time conversations that help you test your knowledge, challenge assumptions, and deepen your understanding as you progress through the course. Unlock the potential of Java with Spring as you learn to build dynamic, scalable applications. This course covers everything from the basics of Spring Framework to advanced Spring Boot and JPA integration, guiding you through creating real-world Java applications. You'll gain hands-on experience using Maven, JUnit, Spring Data JPA, and Spring Boot to build fully functional applications. By the end, you’ll have a deep understanding of dependency management, bean configuration, and the power of Spring’s ecosystem for robust application development. Throughout the course, you’ll work with key Spring tools and techniques. You’ll begin with creating a Spring Framework project, dive into core concepts like dependency injection and autowiring, and then transition to advanced Spring features, such as bean scopes and lifecycle management. With practical examples, you’ll also work with RESTful APIs and databases using Spring Boot and Spring Data JPA. This course is ideal for developers eager to enhance their Java skills and dive into the Spring Framework for real-world application development. It’s designed for those with a basic understanding of Java who want to take their skills to the next level, whether they are building enterprise applications or simple web services.
In this module, we will introduce you to the Java Spring Framework, guiding you through the setup process and key concepts such as loose coupling, Spring Beans, and autowiring. You’ll also get hands-on experience by building a simple Java gaming app within the Spring framework.
What's included
29 videos2 readings1 assignment
29 videos•Total 118 minutes
- Step 01 - Understanding the Need for Java Spring Framework•2 minutes
- Step 02 - Getting Started with Java Spring Framework•3 minutes
- Step 03 - Creating a New Spring Framework Project with Maven and Java•5 minutes
- Step 03z - Quick Intro to Spring Initializr and Maven•3 minutes
- Step 04 - 01 - Getting Started with Java Gaming Application•6 minutes
- Step 04 - 02 - Adding Buttons to Our Spring Gaming App•3 minutes
- Step 04 - 03 - Introduction to var - Java 10 New Feature•3 minutes
- Step 05 - Understanding Loose Coupling and Tight Coupling•5 minutes
- Step 06 - 01 - Introducing Java Interface to Make App Loosely Coupled•6 minutes
- Step 06 - 02 - Code Review - Introducing Java Interface to Spring App•4 minutes
- Step 06 - 03 - Exercise - Adding Pacman Game•2 minutes
- Step 07 - Bringing in Spring Framework to Make Java App Loosely Coupled•3 minutes
- Step 08 - 01 - Launching Java Spring Configuration•7 minutes
- Step 08 - 02 - Your First Java Spring Bean•6 minutes
- Step 08 - 03 - Code Review - Java Spring Configuration and Spring Bean•2 minutes
- Step 09 - Creating More Java Spring Beans in Spring Java Configuration File•7 minutes
- Step 10 - 01 - Implementing Auto Wiring in Spring Framework Java Configuration•3 minutes
- Step 10 - 02 - Reusing Existing Spring Beans for Auto Wiring•9 minutes
- Step 10 - 03 - Code Review - Auto Wiring in Spring using Method Calls and Method•2 minutes
- Step 11 - Questions about Spring Framework - What will we learn?•3 minutes
- Step 12 - Understanding Spring IOC Container: Application Context & Bean Factory•3 minutes
- Step 13 - Exploring Java Bean vs POJO vs Spring Bean•5 minutes
- Step 14 - 01 - Exploring Spring Framework Bean Auto Wiring•4 minutes
- Step 14 - 02 - Exploring Spring Framework Primary and Qualifier Annotations•6 minutes
- Step 15 - 01 - Using Spring Framework to Manage Beans for Java Gaming App•3 minutes
- Step 15 - 02 - Using Spring Framework to Manage Beans for Java Gaming App•7 minutes
- Step 15 - 03 - Code Review - Spring Managed Beans for Java Gaming App•1 minute
- Step 16 - More Questions about Java Spring Framework - What will we learn?•1 minute
- Step 17 - Exploring Spring Framework With Java - Section 1 - Review•2 minutes
2 readings•Total 20 minutes
- Introduction to the Course 'Building Real-World Java Applications with Spring and Beyond'•10 minutes
- Full Specialization Resources•10 minutes
1 assignment•Total 15 minutes
- Getting Started with Java Spring Framework - Assessment•15 minutes
In this module, we will dive into how Spring manages your Java objects with dependency injection. You will explore annotations like @Component and learn how to implement different forms of dependency injection in your applications, enhancing modularity and scalability.
What's included
14 videos1 assignment
14 videos•Total 66 minutes
- Step 01 - 01 - Getting Spring Framework to Create and Manage Your Java Objects•5 minutes
- Step 01 - 02 - Getting Spring Framework to Create Beans using @Component•5 minutes
- Step 01 - 03 - Exercise - Playing with Spring Framework•4 minutes
- Step 01 - 04 - Code Review - Spring Creating and Managing Spring Beans•2 minutes
- Step 02 - Exploring Primary and Qualifier Annotations for Spring Components•4 minutes
- Step 03 - Primary and Qualifier - Which Spring Annotation Should You Use?•4 minutes
- Step 04 - 01 - Exploring Spring Framework - Different Types of Dependency•5 minutes
- Step 04 - 02 - Getting Started with Field Injection•6 minutes
- Step 04 - 03 - Exploring Setter and Constructor Injection•5 minutes
- Step 05 - Java Spring Framework - Understanding Important Terminology•6 minutes
- Step 06 - Java Spring Framework - Comparing @Component vs @Bean•5 minutes
- Step 07 - Why do we have dependencies in Java Spring Applications?•4 minutes
- Step 08 - Exercise: Solution for Real World Java Spring Framework Example•8 minutes
- Step 09 - Exploring Spring Framework With Java - Section 2 - Review•3 minutes
1 assignment•Total 15 minutes
- Using Spring Framework to Create and Manage Your Java Objects - Assessment•15 minutes
In this module, we will cover advanced Spring features like lazy and eager initialization of beans, and discuss the differences between prototype and singleton scopes. You will also explore how Spring manages bean lifecycle using @PostConstruct and @PreDestroy annotations, and compare annotation-based versus XML configuration methods.
What's included
13 videos1 assignment
13 videos•Total 80 minutes
- Step 01 - Exploring Lazy and Eager Initialization of Spring Framework Beans•8 minutes
- Step 02 - Comparing Lazy Initialization Versus Eager Initialization•2 minutes
- Step 03 - Exploring Java Spring Framework Bean Scopes - Prototype and Singleton•9 minutes
- Step 04 - Comparing Prototype Versus Singleton - Spring Framework Bean Scopes•2 minutes
- Step 05 - Exploring Spring Beans - PostConstruct and PreDestroy•7 minutes
- Step 06 - Evolution of Jakarta EE - Comparing with J2EE and Java EE•5 minutes
- Step 07 - Exploring Jakarta CDI with Spring Framework and Java•7 minutes
- Step 08 - Exploring Java Spring XML Configuration•12 minutes
- Step 09 - Java Annotations Versus XML Configuration for Java Spring Framework•4 minutes
- Step 10 - Exploring Spring Framework Stereotype Annotations - Component and more•5 minutes
- Step 11 - Quick Review - Important Spring Framework Annotations•6 minutes
- Step 12 - Quick Review - Important Spring Framework Concepts•3 minutes
- Step 13 - Exploring Spring Big Picture - Framework, Modules, and Projects•9 minutes
1 assignment•Total 15 minutes
- Exploring Spring Framework Advanced Features - Assessment•15 minutes
In this module, we will guide you through the process of setting up a Spring Boot project and creating a simple REST API. You’ll also learn about the core features of Spring Boot such as auto-configuration, embedded servers, and tools to improve development workflow.
What's included
12 videos1 assignment
12 videos•Total 52 minutes
- Step 01 - Getting Started with Spring Boot – Goals•1 minute
- Step 02 - Setting Up New Spring Boot Project with Spring Initializer•5 minutes
- Step 03 - Build a Hello World API with Spring Boot•7 minutes
- Step 04 - Understanding the World before Spring Boot – 10,000 Feet Overview•3 minutes
- Step 05 - Understanding Spring Boot Magic - Spring Boot Starter Projects•4 minutes
- Step 06 - Understanding Spring Boot Magic - Autoconfiguration•7 minutes
- Step 07 - Playing with Spring Boot•5 minutes
- Step 08 - Understanding Spring Boot Magic - Embedded Servers•5 minutes
- Step 09 - Exploring Spring Boot Actuator•6 minutes
- Step 10 - Exploring Spring Boot DevTools•3 minutes
- Step 11 - Understanding Spring Boot Versus Spring Versus Spring MVC•3 minutes
- Step 12 - Getting Started with Spring Boot - Review•1 minute
1 assignment•Total 15 minutes
- Getting Started with Spring Boot - Assessment•15 minutes
In this module, we will introduce you to JUnit and unit testing. You will write your first unit test, explore various assertion methods, and understand how annotations help structure and manage your tests in a more efficient manner.
What's included
5 videos1 assignment
5 videos•Total 37 minutes
- Step 01 - What is JUnit and Unit Testing•5 minutes
- Step 02 - Your First JUnit Project and Green Bar•11 minutes
- Step 03 - Your First Code and First Unit Test•5 minutes
- Step 04 - Exploring Other Assert Methods•8 minutes
- Step 05 - Exploring Few Important JUnit Annotations•7 minutes
1 assignment•Total 15 minutes
- Getting Started with JUnit - Assessment•15 minutes
In this module, you will get familiar with Maven as a build automation tool. We’ll guide you through setting up a Spring Boot project with Maven, explain the structure of the pom.xml file, and dive into Maven’s build lifecycle and commonly used commands.
What's included
9 videos1 assignment
9 videos•Total 49 minutes
- Step 01 - Introduction to Maven•2 minutes
- Step 02 - Creating a Spring Boot Project with Maven•4 minutes
- Step 03 - Exploring Maven pom.xml for Spring Boot Project•9 minutes
- Step 04 - Exploring Maven Parent Pom for Spring Boot Project•7 minutes
- Step 05 - Exploring Maven Further•6 minutes
- Step 06 - Exploring Maven Build Lifecycle with a Spring Boot Project•4 minutes
- Step 07 - How Does Maven Work?•8 minutes
- Step 08 - Playing with Maven Commands•4 minutes
- Step 09 - How Are Spring Projects Versioned?•6 minutes
1 assignment•Total 15 minutes
- Getting Started with Maven - Assessment•15 minutes
In this module, we will introduce JPA and Hibernate, focusing on setting up Spring Boot projects with these technologies. You’ll learn how to persist data, work with Spring Data JPA, and explore key differences between JPA and Hibernate.
What's included
12 videos1 assignment
12 videos•Total 74 minutes
- Step 01 - Getting Started with JPA and Hibernate - Goals•1 minute
- Step 02 - Setting up New Spring Boot Project for JPA and Hibernate•7 minutes
- Step 03 - Launching H2 Console and Creating Course Table in H2•7 minutes
- Step 04 - Getting Started with Spring JDBC•4 minutes
- Step 05 - Inserting Hardcoded Data Using Spring JDBC•8 minutes
- Step 06 - Inserting and Deleting Data Using Spring JDBC•9 minutes
- Step 07 - Querying Data Using Spring JDBC•6 minutes
- Step 08 - Getting Started with JPA and EntityManager•12 minutes
- Step 09 - Exploring the Magic of JPA•3 minutes
- Step 10 - Getting Started with Spring Data JPA•6 minutes
- Step 11 - Exploring Features of Spring Data JPA•5 minutes
- Step 12 - Understanding Difference Between Hibernate and JPA•5 minutes
1 assignment•Total 15 minutes
- Getting Started with JPA and Hibernate - Assessment•15 minutes
In this module, we will guide you in creating a simple REST API with Spring Boot and Spring Data JPA, covering all essential CRUD operations. You’ll also learn how to use Docker to run MySQL and integrate it with your Spring Boot application.
What's included
13 videos1 assignment
13 videos•Total 56 minutes
- Step 01 - Getting Started - Simple REST API with Spring Boot and Spring Data JPA•1 minute
- Step 02 - Integrating Spring Boot with Data JPA and In-Memory Database H2•5 minutes
- Step 03 - JDBC to Spring JDBC to JPA to Spring Data JPA – 10,000 Feet Overview•4 minutes
- Step 04 - Mapping Course Entity and Populating Data with Data Using SQL•8 minutes
- Step 05 - Creating Repository to Manage Entity and Integrating with GET REST API•6 minutes
- Step 06 - Understanding REST API – 10,000 Feet Overview•5 minutes
- Step 07 - Building REST API to Retrieve Details of a Course – GET•3 minutes
- Step 08 - Building REST API to Create a New Course – POST•4 minutes
- Step 09 - Building REST API to Update a Course – PUT•3 minutes
- Step 10 - Building REST API to Delete a Course – DELETE•3 minutes
- Step 11 - Optional Hands-On - Using Docker to Launch MySQL - an Overview•1 minute
- Step 12 - Optional Hands-On - Installing Docker•3 minutes
- Step 13 - Optional Hands-On - Using Docker to Launch MySQL•8 minutes
1 assignment•Total 15 minutes
- Simple REST API with Spring Boot and Spring Data JPA - Assessment•15 minutes
In this module, we will wrap up the course with a congratulatory message and a quick review of the skills and knowledge you’ve gained. Get ready to apply what you’ve learned to build real-world Java applications.
What's included
1 video
1 video•Total 1 minute
- Congratulations!•1 minute
In this module, we will help you troubleshoot common issues related to Eclipse and Java setup. You’ll learn how to configure Java JDK with Eclipse, work with the latest Java versions, and resolve setup issues with Eclipse 2021-03 and JDK 16.
What's included
3 videos1 reading2 assignments
3 videos•Total 9 minutes
- Troubleshooting Eclipse - Configuring Java JDK•3 minutes
- Using Latest Java Version with Latest Eclipse•3 minutes
- Getting Eclipse 2021 03 Working with JDK 16•3 minutes
1 reading•Total 10 minutes
- Conclusion to the Course 'Building Real-World Java Applications with Spring and Beyond'•10 minutes
2 assignments•Total 75 minutes
- Full Course Assessment•60 minutes
- Full Course Practice Assessment•15 minutes
Earn a career certificate
Add this credential to your LinkedIn profile, resume, or CV. Share it on social media and in your performance review.
Instructor
Explore more from Software Development
- Status: Free Trial
Course
- Status: Free TrialE
EDUCBA
Course
- Status: Free Trial
Course
Why people choose Coursera for their career
Frequently asked questions
Yes, you can preview the first video and view the syllabus before you enroll. You must purchase the course to access content not included in the preview.
If you decide to enroll in the course before the session start date, you will have access to all of the lecture videos and readings for the course. You’ll be able to submit assignments once the session starts.
Once you enroll and your session begins, you will have access to all videos and other resources, including reading items and the course discussion forum. You’ll be able to view and submit practice assessments, and complete required graded assignments to earn a grade and a Course Certificate.
More questions
Financial aid available,
