Rapid Spring Application Development with Spring Boot 2
- 6.5 hours on-demand video
- 1 downloadable resource
- Full lifetime access
- Access on mobile and TV
- Certificate of Completion
Get your team access to 4,000+ top Udemy courses anytime, anywhere.Try Udemy for Business
- Understand the microservice architecture and how this architecture drives the need for Spring Boot in a modern cloud-native application environment
- Leverage the power of Spring Dependency Injection with Spring Boot
- Develop custom filters that intercept HTTP servlet requests
- Build a payment gateway application using Spring Boot 2
- Secure your application with Spring Security
- Deploy Spring Boot Actuator to debug your Spring Boot application in production
- Use the Java logging framework, Log4j, to monitor application health and troubleshoot applications
A spring application has the complexities of configuring dependencies and manually doing all the setup required for creating a web or JPA or any other application.
Understand the opinionated way of configuration of Spring Boot
Create a project using Spring Initializer
Know that the project provides all dependencies and configuration
Spring Boot comes in with a lot of starters to easily provide dependencies in an opinionated way and makes bootstrapping the application easier and faster
Understand the parent starter included by default
Provide various starters in pom file
Access the features available by the starters
Development environment requires auto load and deployment of applications as changes are being made
Provide the devtools dependency in pom file
Create a controller and run on server
See how the server restarts automatically as soon as changes are made and saved
Enhance the spring boot application to expose the REST API, integrate with database and start the server.
Understand the architecture of our application
Explore the tools and libraries used
Integrate these in upcoming videos
We need to override the default server provided by Spring Boot, that is, Tomcat server and integrate Jetty server. Create a first hello world application.
Provide the jetty dependency in the pom file
Create a RestController using various annotations
Run the controller on jetty server
Persistence is the key to any application. The existing Spring Boot application will be connected to database.
Provide postgres and jpa dependency and configure application.properties file
Create a CrudRepository for DAO operations and database tables
Create a test class and test the database operations
The data can be produced from the application or consumed by the application sent by the client. The data produced and consumed will now be linked to database created.
Create RequestParameters and access via URL
Access the JSON data sent by the client using RequestBody
See the application up and tested using ARC
Once the application is unit tested, it needs to be tested for a real time environment integrating all the layers required by an application.
Annotate the test class with @SpringBootTest
Use TestRestTemplate class to make REST calls
The application is tested on real time postgres database and jetty
Virtual machines are being in market for virtualizing the physical hardware. Dockers came in recently to virtualize the operating system.
Understand what virtual machine is and what a container is
See the architectural difference
Know the difference between VM and Docker
The aim of this video is to setup our Spring Boot Project and Spring Boot Runner and learn about Dependency Injection and Inversion of Control principle.
Understand Dependency Injection and Inversion of Control principle
Understand the need for Dependency Injection
- No prior knowledge of Spring Boot is assumed. However, a basic knowledge of Java and Spring would be beneficial.
Spring is one of the best frameworks in the market for developing web, enterprise, and cloud-ready applications and services. Spring Boot simplifies the building of complex apps dramatically by reducing the amount of boilerplate code, and by providing production-ready features and a simple deployment model. It is the fastest way to get a Spring application up-and-running with the fewest lines of code and the least configuration. If you're a Java developer who wants to build applications with Spring Boot 2, then go for this course.
This course is a step-by-step guide to building, testing, deploying, and monitoring your robust and scalable web applications using Spring MVC. You will learn to build microservices using Spring Boot 2 and see how microservices address common operational and infrastructural concerns. You will then build a payment system application from scratch using Spring Boot 2. You will also learn to secure your applications using Spring Security. Next, you will learn to create Docker containers to deploy your application into the cloud. Finally, you will leverage the additional features offered by Spring Boot Actuator to help you monitor and manage your applications and services when it's pushed to production.
Contents and Overview
This training program includes 3 complete courses, carefully chosen to give you the most comprehensive training possible.
The first course, Professional Spring Boot 2, transforms your skillset away from building single, large Java applications. You’ll benefit from understanding what microservices are, and the problems they pose for typical Java web services. You'll delve into the Spring Boot architecture and learn to use its components for your professional projects. Through practical examples, you'll build your own JSON RESTful web service, which is an essential tool for any Spring Boot developer. You'll also learn to use Mockito and JUnit to build an end-to-end integration testing suite. Lastly, you will use AWS and Docker to deploy your application to the cloud.
The second course, Hands-On Application Development with Spring Boot 2, provides a hands-on approach to building a payment system application from scratch using Spring Boot 2. You’ll begin by setting up Spring Boot together with Spring’s most powerful feature: Dependency Injection. You will then build a data access layer with Spring data and rework it to be highly performant using Spring data reactive. You’ll also learn about Spring rest and servlets and use it to expose resources via HTTP endpoints. Next, you’ll use Spring MVC to build an interface for the payment system. You’ll also be exposed to critical business metrics using MicroMeter library and Spring actuator with Prometheus library. Finally, you’ll learn to package your application into a Docker container and deploy your application into the cloud.
The third course, Troubleshooting Spring Boot 2.0, will start off by working with Spring Boot Actuator to debug and troubleshoot your application. Since logs can reveal a whole lot about your application and have been traditionally used to debug various types of software applications, this course will guide you through using the Log4j framework to keep a log of your application’s health and performance as you execute different operations. You’ll also get insights into debugging scenarios when you’re building a Spring Boot application using Maven and Gradle. Further on, you’ll work with debuggers available with popular IDEs to fix some common problems in your application. Toward the concluding parts of this course, you’ll learn the exception handling techniques in Spring applications and understand how to use them to troubleshoot when using Spring Boot.
By the end of the course, you will conquer the world of Java applications with Spring Boot 2 to develop, secure, deploy, and monitor your web applications from scratch.
Meet Your Expert(s):
We have the best work of the following esteemed author(s) to ensure that your learning journey is smooth:
Shalini Mittal has 8+ years of experience in learning and development. She has developed websites using technologies like HTML, CSS, Bootstrap and have trained student on technologies like Java 8, Java EE, Spring Boot, Laravel, Spring 5, Hibernate, Android, and many more.
TetraNoodle Technologies provides your business with an augmented executive service that prioritizes growth. We provide technology and CTO services that are cheaper, faster, and better informed than traditional CTOs. Our team has worked within the technology industry for over 45 years. We use the connections, experience, and knowledge we gained during this time to provide flexible solutions to your technology needs. We excel at scaling companies quickly by facilitating rapid technology implementation to propel you to the top of your industry.
Tomasz Lelek is a Software Engineer who programs mostly in Java and Scala. He has worked with Spark API and the ML API for the past five years and has production experience in processing petabytes of data. He is passionate about nearly everything associated with software development and believes that we should always try to consider different solutions and approaches before solving a problem. Recently, he was a speaker at conferences in Poland, Confitura and JDD (Java Developers Day), and the Krakow Scala User Group. He has also conducted a live coding session at Geecon Conference. He is a co-founder of initlearn, an e-learning platform that was built with the Java language.
Petra Simonis is a software developer with extensive expertise in Java, Spring, Spring Boot, C++, and other programming and scripting languages. Over the past 15 years, she has gained experience in the fields of multimedia retrieval, telecommunication, GIS services, and healthcare.
- This course is for Java developers who want to build, test, and deploy production-ready applications with Spring Boot 2. Technical architects looking to learn how to employ Spring Boot in a cloud-native environment will also find this course useful.