Video description
By promoting excellent coding practices and speeding up development time, the Spring framework has proved its metal in the world of software development and is now the most in-demand skill for Java developers. If you’re looking to get to grips with Spring and the important techniques and best practices, then this is the right course for you.
You’ll start by configuring a project’s dependencies to use Spring. Next, you’ll understand the functionality and application of dependency injection and inversion of control in Spring. As you progress, you’ll manage application properties and state using Spring property management and learn how to apply profiles in Spring. You’ll also find out how to use proxies for making service methods transactional. Moving ahead, you’ll get to grips with lifecycle and callback interfaces and the events needed to integrate and access lower-level components of the Spring container. Later, you’ll get an overview of Spring JDBC and uncover techniques to work with databases. Finally, you’ll delve into web application development with Spring.
By the end of this course, you'll be able to confidently work with existing Spring applications and build your own projects from the ground up.
What You Will Learn
- Use properties in Spring applications
- Apply profiles in Spring applications to manage property sets
- Find out how a Spring container is used in modern Java applications
- Autowire dependencies in the Spring container
- Apply Spring to tackle cross-cutting project concerns
- Build a Maven project to use Spring MVC
Audience
This course is for anyone who wants to learn Spring from the ground up. Experienced developers who want to reinforce their knowledge of Spring fundamentals and developers who are transitioning into Java technology will also find this course useful. Basic knowledge of Java and OOP concepts is necessary to get started with this course.
About The Author
Matthew Speake: Matthew Speake is a Java technologist and trainer. He has over 20 years of experience working everywhere from small start-ups to large global corporations and is the principal trainer at Zention in the UK.
He started JavaEasily in 2018 to produce courses focused on teaching Java technology to students all around the world. Since then, JavaEasily has been busy creating and publishing courses and articles on different aspects of Java to help beginners and intermediate Java developers enhance their skills. JavaEasily helps you become a better Java developer by teaching you the core skills you need in order to succeed in your Java career.
Table of contents
- Chapter 1 : Getting Started
- Chapter 2 : Creating the Spring Container with Application Contexts
- Chapter 3 : Creating, Retrieving, and Using Spring-Managed Beans
-
Chapter 4 : Understanding Dependency Injection and Inversion of Control
- Section Introduction
- Coding Beans to Use Constructor Dependency Injection
- Interpreting a Spring Container Exception
- Applying Constructor Dependency Injection to XML Configuration
- Verifying the Constructor Dependency Injection with the Debugger
- Shareability of Beans in an Inversion of Control (IoC) Container
- The Benefits of Dependency Injection in an Inversion of Control (IoC) Container
- Alternatives to Using Constructor Dependency
- Coding Beans to Use Setter Dependency Injection
- Applying Setter Dependency Injection in XML Configuration
- Verifying the Setter Dependency Injection using the Debugger
-
Chapter 5 : Auto-wiring Dependencies in the Spring Container
- Section Introduction
- Adding Component Scanning to Auto-detect Spring Managed Bean Annotations
- Coding Beans to be Auto-managed and Auto-wired by Spring through Annotations
- The Advantage of Annotation-based Configuration over XML Configuration
- Verifying the Annotation-driven Auto Wired Beans
- Spring's Stereotype Annotations for Better Code Readability
- Setter Dependency Injection with Annotations
- Constructor Dependency Injection with Annotations
- Using the Annotation-based Application Context
- Creating a Java Configuration Class
- Applying Java-based Configuration with @Bean
- Using Scopes with Java-based Configuration
- Modeling a More Complex Application to Demonstrate Auto-wiring Ambiguity Issues
- Resolving Ambiguous Arguments of the Same Type by Narrowing the Reference Type
- Resolving Ambiguous Arguments of the Same Type by Using @Qualifier
-
Chapter 6 : Using Properties and Profiles in Spring Projects
- Section Introduction
- Injecting Properties Read from a Properties File with @Value in Spring Managed Bean
- Exploring Property Overriding in Spring
- Accessing and Using Properties with the Property Placeholder in XML Configuration
- Specifying Default Properties for Property Values
- Exceptions for Missing Property Keys in Spring
- Resolving and Using a Property Value in a Bean Definition in XML Configuration
- Accessing the Current Active Profiles using the Environment Interface
- Setting the Current Active Profile Programmatically and Through a Property Switch
- Creating Profile-specific Bean Configuration
- Conditional Beans with @Profile
-
Chapter 7 : Getting to Know the Spring Container
- The Proxy Design Pattern
- Seeing Proxies in Action
- The Disadvantages of a Regular Proxy
- Understanding the Java Development Kit (JDK) Dynamic Proxies
- Dynamic Proxies in Spring
- Understanding how Spring Makes Service Methods Transactional using Proxies
- Spring-managed Bean Lifecycle Callback Methods
- The Java Development Kit (JDK) Standard Lifecycle Annotations (@PostConstruct and @PreDestroy)
- The Sequence of Spring Container Callbacks on a Spring-managed Bean
- Application Container Callbacks and Events
- Using the *Aware Interfaces to Access Lower-level Spring Framework Components
-
Chapter 8 : Accessing Databases with Spring
- Creating and Configuring Data Sources
- Creating a Data Access Object to Access a Database
- Connecting Pool Data Sources in Spring
- Creating a Java Database Connectivity (JDBC) Template to Access a Database
- Using Java Database Connectivity (JDBC) Templates to Insert and Query Data
- Using Java Database Connectivity (JDBC) Data Access Object Pattern (DAO) Support to Remove Boilerplate JDBC Code
- Chapter 9 : Aspect-oriented Programming in Spring
-
Chapter 10 : Web Application Development in Spring
- Preparing a Maven Project to Use Spring Model-View-Controller (MVC)
- Registering the Dispatcher Servlet as the Front Controller
- Creating the Web Application Context
- Creating a Controller Class
- Configuring the Jetty Plug-in in Maven to Run a Web Application
- Setting Up Remote Debugging of a Web Application
- Understanding the Dispatcher Servlet Processing Flow
- Writing a Controller to Service Web Requests
- Rendering a Jakarta Server Pages (JSP) Based View with View Resolvers
- Understanding How a Request is Serviced
- Passing a Model to the View for More Dynamic Pages
- Injecting the HTTP Servlet Request and Response into a Controller
- Passing Request Parameters and Query Strings to a Controller
- Using Path Variables to Access Parts of the Request Path
Product information
- Title: Mastering Spring Framework Fundamentals
- Author(s):
- Release date: October 2020
- Publisher(s): Packt Publishing
- ISBN: 9781801079525
You might also like
video
Learn Spring Core Framework the Easy Way
Are you a professional willing to enter the Spring Framework world? Spring Core is the starting …
video
Mastering Java 8 Fundamentals
Whether you want to learn the fundamentals of the Java 8 programming platform or work on …
video
Spring Boot Fundamentals
Spring is one of the most widely used frameworks in the industry. Whether you are an …
video
Spring Framework Essentials
This video's accompanying source code can be found in the eGitHub repository https://github.com/kousen/Spring-Framework-Essentials. Anyone who writes …