Training Description:
Spring Framework is a revolutionary application development
framework that has dramatically changed the way Java
applications are built and integrated together. While the
original versions had limited features, Spring has now
evolved to a stage that it is so serious to be neglected.
Spring helps applications be developed faster, encourages
loose coupling, modularization, testability and reuse of
components. It also simplifies integration, adaptability and
reconfigurability of Java applications to an unexampled
level.
While the number of extensions are high, this training
focuses on the core of Spring Framework and a number of
mostly used extensions. The set of features covered during
the training are in most of the cases more than required for
typical Spring based application development irrespective of
the size and complexity.
Training Objectives:
At the end of the training, participants will be able to
-
Use Spring Framework to build stand-alone Java applications
-
Use Spring Framework to build Java EE applications
(Middle-tier or Web-tier including JSF applications)
-
Use Aspect-Oriented Programming features of Spring
-
Use Spring to access databases in multiple ways and manage
transactions declaratively
-
Use Web services and JMS for remoting purposes of a Spring
based application
Target Groups:
-
Java Standard Edition application developers
-
Java Enterprise Edition application developers
-
Read "Do I
fit for that training?" if you are interested, but
need help to determine whether you should participate or
not.
Prerequisites:
-
Participants should be familiar with the Java programming
language.
-
It is preferred if participants are familiar with Java
Enterprise Edition (Java EE) application development since
some modules of this training explores the usage of Spring
Framework within such applications. This training does not
teach the concepts of Java Enterprise Edition. However, if
you are not familiar with Java EE, you will get a chance to
see what it is even though you may not fully understand some
portions.
-
If you do not find yourself in such a state, also read "Do I
fit for that training?".
Communication Language:
English (With Sinhala explanations if requested)
Duration:
2 Days (16 hours)
Facilitator:
Kamal Wickramanayake (Profile)
Notes:
-
This training is delivered with hands-on lab exercises.
Participants will get exposed to a number of applications
that demonstrates what they learn.
-
The latest stable version of the Spring Framework will
always be used.
-
GlassFish and JBoss application servers will be used with
the exercises that require an underlying application server.
Training Content:
- Introduction
- What is Spring Framework?
- Where can Spring be used?
- Advantages of using Spring
- Dependency injection pattern
- Anatomy of a Spring based application
- Spring modules
- Different Spring Configuration Mechanisms
- XML based (Declarative) configuration
- Annotation based (Programmatic) configuration
- Aspect-Oriented Programming (AOP)
- What is AOP?
- Terminology
- General mechanisms used to implement AOP
- Spring implementation of AOP
- Database Access
- Using JDBC
- Using Hibernate
- Using JPA
- Transaction Management
- Simplified declarative transaction management
- Transaction management and AOP
- Using resource specific transaction managers
- Using a JTA transaction manager
- Spring In Java Web Applications
- Initializing Spring within a Web application
- Accessing Spring beans from Servlets/JSPs
- Using Spring within a JSF application
- Overview of Spring MVC
- Remoting With Spring
- Overview of different remoting mechanisms supported by Spring
- Remoting with Web services
- Remoting with JMS
- Concluding Remarks
- Overview of other useful capabilities of Spring Framework
- Ports of Spring Framework to other languages