Training: Developp with Spring

Not certifying


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


  • 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)


  • 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


  • 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.-

lun17apr(apr 17)09:00mer19(apr 19)17:00Genève, Route des Jeunes 33B, 1227 Carouge Etiquettes de sessionSPRING

lun17apr(apr 17)09:00mer19(apr 19)17:00VirtuelVirtual Etiquettes de sessionSPRING

mer31may(may 31)09:00ven02jun(jun 2)17:00Lausanne, Avenue Mon repos 24, 1005 Lausanne Etiquettes de sessionSPRING

mer31may(may 31)09:00ven02jun(jun 2)17:00VirtuelVirtual Etiquettes de sessionSPRING

Horaires d’ouverture

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


Votre demande

Opening hours

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

Contact us

Your request