Training: Developp with Spring

Ref. SPRING
Duration:
3
 days
Exam:
Not certifying
Level:
Fundamental

Description

Spring is an open source framework for Java EE 3-tier applications that facilitates development and testing. Spring is based on the integration of three key concepts: the inversion of control or dependency injection, aspect-oriented programming and a layer of abstraction that facilitates the integration of other frameworks and libraries. Participants in this training will learn the basics of the Spring framework. They will be able to manage the configuration of application components and become familiar with good development practices as well as the contributions of Aspect Oriented Programming.

Participant profiles

  • Developers
  • Architects
  • Project managers

Objectives

  • Know the basics of Spring framework
  • Manage the configuration of application components with Spring
  • Know proper development with Spring
  • Know the contributions of Aspect Oriented Programming (AOP)

Prerequisites

  • Mastered knowledge in the Java language

Course content

Module 1: Introduction to Spring
  • Lesson 1: Java configuration and the Spring application context
  • Lesson 2: @Configuration and @Bean annotations
  • Lesson 3:  @Import: working with multiple configuration files
  • Lesson 4: Launching a Spring Application and obtaining Beans
Module 2: Spring Java Configuration: A deeper look
  • Lesson 1: External properties & Property sources
  • Lesson 2: Environment abstraction
  • Lesson 3: Bean scope, bean profiles
  • Lesson 4: Spring Expression Language (SpEL)
  • Lesson 5: How it Works: Inheritance based proxies
Module 3: Annotation-Based Dependency injection
  • Lesson 1: Autowiring and component scanning
  • Lesson 2: Java configuration versus annotations, mixing.
  • Lesson 3: Lifecycle annotations: @PostConstruct and @PreDestroy
  • Lesson 4: Stereotypes and meta-annotations
Module 4: XML Dependency Injection
  • Lesson 1: XML syntax, constructor & setter injection
  • Lesson 2: Resource prefixes
  • Lesson 3: Namespaces and best practices when using XML
  • Lesson 4: XML profile selection
  • Lesson 5: Using Spring FactoryBeans with Java or XML configuration
Module 5: The Bean Lifecycle : How does Spring work internally?
  • Lesson 1: The init phase: available interceptors
  • Lesson 2: The init phase: what is the difference between XML, annotations and Java configuration?
  • Lesson 3: The use and destruction phases
Module 6: Testing a Spring-based Application
  • Lesson 1: Spring and Test Driven Development
  • Lesson 2: @ContextConfiguration and @RunWith annotations
  • Lesson 3: Application context caching and the @DirtiesContext annotation
  • Lesson 4: Profile selection with @ActiveProfiles
  • Lesson 5: Easy test data setup with @Sql
Module 7: Aspect-Oriented Programming
  • Lesson 1: What problems does AOP solve?
  • Lesson 2: Differences between Spring AOP and AspectJ
  • Lesson 3: Defining pointcut expressions
  • Lesson 4: Implementing an advice: @Around, @Before, @After
Module 8: Data Access and JDBC with Spring
  • Lesson 1: How Spring integrates with existing data access technologies
  • Lesson 2: DataAccessException hierarchy
  • Lesson 3: Implementing caching using @Cacheable
  • Lesson 4: jdbc namespace and Spring‘s JdbcTemplate
Module 9: Database Transactions with Spring
  • Lesson 1: Transactions overview
  • Lesson 2: Transaction management with Spring
  • Lesson 3: Isolation levels, transaction propagation and rollback rules
  • Lesson 4: Transactions and integration testing
Module 10: JPA with Spring and Spring Data
  • Lesson 1: Quick introduction to ORM with JPA
  • Lesson 2: Benefits of using Spring with JPA
  • Lesson 3: JPA configuration in Spring
  • Lesson 4: Spring Data JPA dynamic repositories
Module 11: Spring in a Web Application
  • Lesson 1: Configuring Spring in a Web application
  • Lesson 2: Introduction to Spring MVC, required configuration
  • Lesson 3: Controller method signatures
  • Lesson 4: Views and ViewResolvers
  • Lesson 5: Using @Controller and @RequestMapping annotations
Module 12: Spring Boot
  • Lesson 1: Using Spring Boot to bypass most configuration
  • Simplified dependency management with starter POMs
  • Packaging options, JAR or WAR
  • Easily overriding Spring Boot defaults
Module 13: SPRING BOOT – going further
  • Going beyond the default settings
  • Customizing Spring Boot configuration
  • Logging control
  • Configuration properties using YAML
  • Boot-driven testing
Module 14: Spring Security
  • What problems does Spring Security solve?
  • Configuring authentication and intercepting URLs
  • The Spring Security tag library for JSPs
  • Security at the method level
  • Customizing the Spring Security filter chain
  • Understanding the Spring Security filter chain
Module 15: REST With SPRING MVC
  • An introduction to the REST architectural style
  • Controlling HTTP response codes with @ResponseStatus
  • Implementing REST with Spring MVC, @RequestBody, @ ResponseBody
  • Spring MVC’s HttpMessageConverters and automatic content negotiation

Documentation

  • Digital courseware included

Complementary courses

Temptraining funding

ITTA is a partner of Temptraining, the continuing education fund for temporary workers. This training fund can subsidize continuing education for anyone who works for an employer subject to the Collective Work Agreement (CCT) Rental of services.
Prix de l'inscription
CHF 2'150.-
Inclus dans ce cours
  • Training provided by an industry expert
  • Digital documentation and materials
  • Achievement badge

mer22Mai(Mai 22)09:00ven24(Mai 24)17:00VirtuelVirtual Etiquettes de sessionSPRING

mer22Mai(Mai 22)09:00ven24(Mai 24)17:00Lausanne, Avenue Mon repos 24, 1005 Lausanne Etiquettes de sessionSPRING

mer26Juin(Juin 26)09:00ven28(Juin 28)17:00VirtuelVirtual Etiquettes de sessionSPRING

mer26Juin(Juin 26)09:00ven28(Juin 28)17:00Genève, Route des Jeunes 33B, 1227 Carouge Etiquettes de sessionSPRING

mer31juil(juil 31)09:00ven02Aoû(Aoû 2)17:00VirtuelVirtual Etiquettes de sessionSPRING

mer31juil(juil 31)09:00ven02Aoû(Aoû 2)17:00Lausanne, Avenue Mon repos 24, 1005 Lausanne Etiquettes de sessionSPRING

mer04Sep(Sep 4)09:00ven06(Sep 6)17:00VirtuelVirtual Etiquettes de sessionSPRING

mer04Sep(Sep 4)09:00ven06(Sep 6)17:00Genève, Route des Jeunes 33B, 1227 Carouge Etiquettes de sessionSPRING

mer09Oct(Oct 9)09:00ven11(Oct 11)17:00VirtuelVirtual Etiquettes de sessionSPRING

mer09Oct(Oct 9)09:00ven11(Oct 11)17:00Lausanne, Avenue Mon repos 24, 1005 Lausanne Etiquettes de sessionSPRING

mer13Nov(Nov 13)09:00ven15(Nov 15)17:00VirtuelVirtual Etiquettes de sessionSPRING

mer13Nov(Nov 13)09:00ven15(Nov 15)17:00Genève, Route des Jeunes 33B, 1227 Carouge Etiquettes de sessionSPRING

mer18Déc(Déc 18)09:00ven20(Déc 20)17:00VirtuelVirtual Etiquettes de sessionSPRING

mer18Déc(Déc 18)09:00ven20(Déc 20)17:00Lausanne, Avenue Mon repos 24, 1005 Lausanne Etiquettes de sessionSPRING

Horaires d’ouverture

Du lundi au vendredi, de 8:30 à 18:00.

Contactez-nous

Votre demande

Opening hours

Monday to Friday, from 8:30 am to 06:00 pm.

Contact us

Your request

X
X
X
X