3 arrows

Summer-Ready Savings: Up To $500 Off Training 


Mastering Spring 4.2

  • Tuition USD $2,595 GSA  $2,353.15
  • Reviews star_rate star_rate star_rate star_rate star_half 4119 Ratings
  • Course Code TT3330-S4
  • Duration 5 days
  • Available Formats Classroom

The Spring framework is an application framework that provides a lightweight container that supports the creation of simple-to-complex components in a non-invasive fashion. Spring's flexibility and transparency is congruent and supportive of incremental development and testing. The framework's structure supports the layering of functionality such as persistence, transactions, view-oriented frameworks, and enterprise systems and capabilities. This course targets Spring 4.2, which includes full support for Java 8 and JEE 7 (earlier versions of Java and JEE continue to be supported). Spring supports the use of lambda expressions and method references in many of its APIs. Spring makes JEE development easier. Spring simplifies common tasks and encourages good design based on programming to interfaces. Spring makes your application easier to configure and reduces the need for many JEE design patterns. Spring puts the OO design back into your JEE application, and it integrates nicely with many view technologies and the new features of HTML5.

Skills Gained

  • Explain the issues associated with complex frameworks such as JEE and how Spring addresses those issues
  • Understand the relationships between Spring and JEE, AOP, IOC, JDBC, Hibernate, JSF, Struts, JMS, and EJBs.
  • Write applications that take advantage of the Spring container and the declarative nature of assembling simple components into applications.
  • Understand how to configure the framework with XML, annotations and JavaConfig as well as explore the advantages of each option.
  • Understand and work on integrating persistence into a Spring application.
  • Explain Spring's support for transactions and caching
  • Understand and work with various options for integrating view-oriented frameworks for web applications into spring.
  • Work with Spring Boot and JavaConfig to more effectively and efficiently develop Spring applications.
  • Work with various Spring Application Events, implementing and registering listeners, and monitoring for transactional events

Who Can Benefit

  • Experienced Java Developers


  • TT2100 Mastering Java for OO Developers

Course Details

Lesson: The Spring Framework

  • Spring Architecture
  • Dependency Injection
  • Spring DI Container
  • Bean Creation Using Factories
  • Configuration Options: XML, Annotations, or JavaConfig
  • Use of Lambda Expressions and Method References in Spring

Lesson: Spring Beans and Advanced Configuration

  • Spring's Pre-built Factory Beans
  • PropertyPlaceholderConfigurer
  • Custom Property Editors
  • Lazy Bean Resolution
  • Ordered Autowiring
  • Using Configuration Classes
  • Organizing Configuration Classes

Lesson: Spring AOP

  • Aspect Oriented Programming - AOP
  • Crosscutting Concerns
  • Spring's AOP in a Nutshell
  • The Three Technologies of "Weaving"
  • Four Kinds of Advice
  • Joinpoint and PointCuts

Lesson: Using Annotations with AOP

  • Using Annotations to Create Aspects
  • Other Advice Types
  • Types of Pointcuts
  • Spring Pointcut Pattern Expressions
  • Introductions

Lesson: Overview: Persistence in Spring

  • DAO Implementations
  • Transaction Support
  • Spring Support for JCache
  • Spring Data: JPA to NoSQL

Lesson: Spring JDBC

  • JdbcDaoSupport - JDBC DAO Implementation
  • The jdbcTemplate
  • Exception Handling
  • Operation Classes

Lesson: Spring and Hibernate

  • Benefits of Using Spring with Hibernate
  • Configuring Hibernate in Spring
  • Transaction Management
  • Open Session in View

Lesson: Overview: Spring Views

  • SpringMVC and Web Flow
  • View Technologies
  • WebSockets, SockJS, and STOMP
  • Support for AppCache and HTML5
  • SpringMVC Test Framework

Lesson: SpringMVC Overview

  • The DispatcherServlet
  • Workflow of Request Handling
  • Using Handler Mappings
  • ModelAndView and View
  • Controllers
  • Spring Form Tags

Lesson: HandlerMapping

  • Mapping URLs to Controllers
  • HandlerMapping Interface
  • RequestMapping Annotation
  • Mapping Requests
  • Custom Handler Mapping

Lesson: Controllers

  • Spring MVC's Controller Hierarchy
  • How to Select a Controller
  • Controller Interface
  • Controller annotation
  • Form Controllers
  • Handling Exceptions
  • Testing Controllers

Lesson: Spring’s form Tag Library

  • The Spring Form tags
  • Using a PropertyEditor
  • Survey of form tags
  • Support for HTML5 Attributes

Lesson: Application Events in Spring

  • Overview of Application Events
  • Built-in Events
  • @EventListener
  • Returning Object from Listener
  • Transaction-Bound Events

Lesson: Spring Boot

  • Understanding Spring Boot
  • Convention Over Configuration
  • Working with Embedded Servers
  • Providing metrics, health checks, and more

Lesson: Enterprise Spring Security

  • Spring Security Framework
  • Security Interceptors
  • Authentication Managers
  • Wiring in Encoders and Salts
  • Access Decision Managers

Lesson: Spring Web Security

  • Spring Security Transparent to Client
  • Standard Set of Filters
  • Spring Security Config File
  • Securing Java Code
  • Securing Java Spring Beans

Lesson: JMS Overview (Optional)

  • Java Message Service (JMS)
  • The JMS Factory Model
  • JMS Queue Architecture
  • Topic Architecture
  • Messages

Lesson: Spring and JMS

  • JmsTemplate Methods
  • Callback Methods
  • Spring Messaging Module
  • Message Converters
  • MessagePostProcessor
  • Destinations
  • Working with @JmsListener

When does class start/end?

Classes begin promptly at 9:00 am, and typically end at 5:00 pm.

Does the course schedule include a Lunchbreak?

Lunch is normally an hour long and begins at noon. Coffee, tea, hot chocolate and juice are available all day in the kitchen. Fruit, muffins and bagels are served each morning. There are numerous restaurants near each of our centers, and some popular ones are indicated on the Area Map in the Student Welcome Handbooks - these can be picked up in the lobby or requested from one of our ExitCertified staff.

How can someone reach me during class?

If someone should need to contact you while you are in class, please have them call the center telephone number and leave a message with the receptionist.

What languages are used to deliver training?

Most courses are conducted in English, unless otherwise specified. Some courses will have the word "FRENCH" marked in red beside the scheduled date(s) indicating the language of instruction.

What does GTR stand for?

GTR stands for Guaranteed to Run; if you see a course with this status, it means this event is confirmed to run. View our GTR page to see our full list of Guaranteed to Run courses.

Does ExitCertified deliver group training?

Yes, we provide training for groups, individuals and private on sites. View our group training page for more information.

Does ExitCertified deliver group training?

Yes, we provide training for groups, individuals, and private on sites. View our group training page for more information.

Great instructor, clear and concise course. Labs were easy to follow and worked perfectly.

I was very satisfied about how the course was organized. Sean Did a very good work

Some Labs are very good but some steps it ask to update but its already updated, but overall its very good training.

Overall ExitCertified is a great training provider and the remote learning is as effective as in person.

This course gave me a clearer understanding of the AWS cloud architecture.

0 options available

There are currently no scheduled dates for this course. If you are interested in this course, request a course date with the links above. We can also contact you when the course is scheduled in your area.

Contact Us 1-800-803-3948
Contact Us
FAQ Get immediate answers to our most frequently asked qestions. View FAQs arrow_forward