Code: JVA-010
Duration: 24 hours
Duration: 24 hours
Description
Spring is a lightweight, open source framework first released in 2003. Now Spring is a popular open source project, that covers various aspects of both JavaEE and JavaSE development. The Spring Framework is best known as a source extension (features), necessary for the efficient development of complex business applications outside software heavyweight models.The Spring Framework can be viewed as a collection of smaller frameworks, most of which can operate independently of each other. However, they provide more functionality when used jointly. Abstract classes, factories and beans are designed so that the programmer can concentrate on writing business logic only.
This course will give participants information related to how the Spring Framework works. They will learn about the basic modules of the framework and options for their use as well as how to use the Spring framework in conjunction with other technologies.
Roadmap
Basics of Spring Framework- Introduction to Spring Framework
- General
- Conditions for Spring Framework creating
- Spring possibilities usage
- Versions, differences, support of the different JDK versions
- Framework Architecture
- Modules
- Managed and Non-managed environment
- Components model of the Spring
- IoC and DI concept, Design to Interface
- Problems and advantages
- Service Locator vs Dependency Injection
- IoC-container structure
- Beans
- IoC-container
- BeanFactory
- POJO, Bean Naming
- Components declaration
- Injections (setter, constructor)
- Autowiring
- Bean Scope
- Properties, PropertyEditor
- Components lifecycle
- Init, destroy
- Lifecycle interfaces
- ApplicationContext
- Spring’s events
- Exercise: simple application development
Spring AOP
- Basics
- Advices
- Spring’s AOP features
- Example of AspectJ style
- Advice’s parameters
- Poincut’s descriptions
- Exercise: AspectJ style
- Data access
- JNDI
- DAO
- JDBC support in Spring
- JdbcTemplate
- Spring for data access – advantages
- Exercise: JDBC – bases application in conjunction with Spring for data access.
- Spring ORM
- Basics and architecture
- JPA ( Hibernate asJPA provider )
- Exercise: ORM based application in conjunction with Spring for data access
- pring Transactions
- Basics and architecture
- Transactions definitions, isolations, propagation
- Programmatic style
- Declarative style
- Programmatic style vs. Declarative style
- Exercise: Tx – declarative style application
Spring MVC
- MVC template
- Introduction to Spring Web MVC
- Controllers
- Views
- L10n / i18n
- Themes
- Multipart
- Convention over configuration
- Annotations
- Exercise: Simple MVC based application with i18n, and themes
Spring – Integration with EE *
- Job scheduling
- Using Spring with JMS
- Using Spring with EJB
Objectives
- Introduce participants to the Spring Framework and its practical application in solving typical problems that arise during development
- Information about integration with EE technologies will also be provided
- Provide an overview of the range of products developed under the Spring license
Target Audience
Java developers with at least one year of experience.Prerequisites
- Required experience with Java 8 development;
- Maven;
- Required:
- JNDI;
- JDBC;
- Servlet / JSP / JSTL;
- Knowledge of design patterns: Proxy, Command, Decorator, Template Method, MVC;
- Optional:
- JMS;
- EJB.