Vd6qpvplcbofujspih9n
4 DAY COURSE

Pivotal's Core Spring

Topics covered at SPRING-01-04
View Schedule & Book More dates available

Next up:

Core Spring is the four-day flagship Spring Framework and Spring Boot training. In this course, students build a Spring-powered Java application that demonstrates the Spring Framework and other Spring technologies like Spring Boot, Spring Data, Spring Security and micro-services in an intensely productive, hands-on setting.

This course offers hands-on experience with Spring and its major features, including configuration, data access, web and REST applications, Spring Boot, Spring Security and using Spring Cloud to build a small microservices application. On completion, participants will have a foundation for creating enterprise-ready applications.

Learn how to:

  • Spring configuration using Java, Annotations and XML
  • Aspect oriented programming with Spring
  • Testing Spring applications
  • Data Access - JDBC, JPA, Spring Data
  • Using Spring for Transaction Management
  • Building Web Applications with Spring MVC
  • Spring Boot - introductory and advanced topics
  • Implementing REST with Spring MVC and RestTemplate
  • Spring Security
  • Microservices with Spring Cloud

What the community says

"Very knowledgeable teacher. Took his time to answer all questions we had."

Petar Stefauov on 19th Nov 2015

"Very good at applying the examples to real world situations which is extremely useful."

Jonathan Sharifi on 24th Sep 2015

"Great tutor, knows how to keep people interested."

Artur Malinowski on 24th Sep 2015

"Very well taught and very well presented by Russ. Simplified complex problems with stories very well."

Ricky Dean on 21st Sep 2015

"Very happy with the course, it's content and the instructor. It exceeded expectations."

Gareth Sullivan on 21st May 2015

About the Expert

Patrick Baumgartner

Patrick Baumgartner is co-founder of Swiftmind, a Swiss software company that helps companies maximize their software product's potential by consulting them on best practices for software architecture, design, implementation, and testing, with a focu

About the Author

Rod Johnson

Rod is the father of Spring. The Spring Framework open source project began in February 2003, based on SpringSource's Spring framework published with Rod's best-selling Expert One-on-One Java EE Design and Development.

Thanks to our partners

INTRODUCTION TO SPRING

  • Java configuration and the Spring application context
  • @Configuration and @Bean annotations
  • @Import: working with multiple configuration files
  • Launching a Spring Application and obtaining Beans

SPRING JAVA CONFIGURATION: A DEEPER LOOK

  • External properties & Property sources
  • Environment abstraction
  • Bean scope, bean profiles
  • Spring Expression Language (SpEL)
  • How it Works: Inheritance based proxies

ANNOTATION-BASED DEPENDENCY INJECTION

  • Autowiring and component scanning
  • Java configuration versus annotations, mixing.
  • Lifecycle annotations: @PostConstruct and @PreDestroy
  • Stereotypes and meta-annotations

XML DEPENDENCY INJECTION

  • XML syntax, constructor & setter injection
  • Resource prefixes
  • Namespaces and best practices when using XML
  • XML profile selection
  • Using Spring FactoryBeans with Java or XML configuration

THE BEAN LIFECYCLE: HOW DOES SPRING WORK INTERNALLY?

  • The init phase: available interceptors
  • The init phase: what is the difference between XML, annotations and Java configuration?
  • The use and destruction phases

TESTING A SPRING-BASED APPLICATION

  • Spring and Test Driven Development
  • @ContextConfiguration and @RunWith annotations
  • Application context caching and the @DirtiesContext annotation
  • Profile selection with @ActiveProfiles
  • Easy test data setup with @Sql

ASPECT-ORIENTED PROGRAMMING

  • What problems does AOP solve?
  • Differences between Spring AOP and AspectJ
  • Defining pointcut expressions
  • Implementing an advice: @Around, @Before, @After

DATA ACCESS AND JDBC WITH SPRING

  • How Spring integrates with existing data access technologies
  • DataAccessException hierarchy
  • Implementing caching using @Cacheable
  • jdbc namespace and Spring‘s JdbcTemplate

DATABASE TRANSACTIONS WITH SPRING

  • Transactions overview
  • Transaction management with Spring
  • Isolation levels, transaction propagation and rollback rules
  • Transactions and integration testing

JPA WITH SPRING AND SPRING DATA

  • Quick introduction to ORM with JPA
  • Benefits of using Spring with JPA
  • JPA configuration in Spring
  • Spring Data JPA dynamic repositories

SPRING IN A WEB APPLICATION

  • Configuring Spring in a Web application
  • Introduction to Spring MVC, required configuration
  • Controller method signatures
  • Views and ViewResolvers
  • Using @Controller and @RequestMapping annotations

SPRING BOOT

  • Using Spring Boot to bypass most configuration
  • Simplified dependency management with starter POMs
  • Packaging options, JAR or WAR
  • Easily overriding Spring Boot defaults

SPRING BOOT - GOING FURTHER

  • Going beyond the default settings
  • Customizing Spring Boot configuration
  • Logging control
  • Configuration properties using YAML
  • Boot-driven testing

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

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

MICROSERVICES WITH SPRING CLOUD

  • Microservice Architectures
  • Challenges with cloud-native applications
  • Using Spring Cloud
  • Developing a simple microservice system

Audience

If you are an experienced Java EE Developer or Architect and you:

  • are interested in learning all about developing java applications with Spring
  • You have an upcoming project and need to learn Spring quickly
  • You like to become Spring Certified to improve your career opportunities

Prerequisites

To benefit from this Core Spring course you will need to have a basic understanding of application development using Java

Bring your own hardware

Delegates are requested to bring their own laptop for this course, with Java 6 installed. If you are unable to bring a laptop for the course, please contact the sales team on +44 20 7183 9040, or email the sales team.

Please submit all laptop requests a minimum of 48 hours prior to the course as laptops are subject to availability.

Overview

Core Spring is the four-day flagship Spring Framework and Spring Boot training. In this course, students build a Spring-powered Java application that demonstrates the Spring Framework and other Spring technologies like Spring Boot, Spring Data, Spring Security and micro-services in an intensely productive, hands-on setting.

This course offers hands-on experience with Spring and its major features, including configuration, data access, web and REST applications, Spring Boot, Spring Security and using Spring Cloud to build a small microservices application. On completion, participants will have a foundation for creating enterprise-ready applications.

Learn how to:

  • Spring configuration using Java, Annotations and XML
  • Aspect oriented programming with Spring
  • Testing Spring applications
  • Data Access - JDBC, JPA, Spring Data
  • Using Spring for Transaction Management
  • Building Web Applications with Spring MVC
  • Spring Boot - introductory and advanced topics
  • Implementing REST with Spring MVC and RestTemplate
  • Spring Security
  • Microservices with Spring Cloud

What the community says

"Very knowledgeable teacher. Took his time to answer all questions we had."

Petar Stefauov on 19th Nov 2015

"Very good at applying the examples to real world situations which is extremely useful."

Jonathan Sharifi on 24th Sep 2015

"Great tutor, knows how to keep people interested."

Artur Malinowski on 24th Sep 2015

"Very well taught and very well presented by Russ. Simplified complex problems with stories very well."

Ricky Dean on 21st Sep 2015

"Very happy with the course, it's content and the instructor. It exceeded expectations."

Gareth Sullivan on 21st May 2015

About the Expert

Patrick Baumgartner

Patrick Baumgartner is co-founder of Swiftmind, a Swiss software company that helps companies maximize their software product's potential by consulting them on best practices for software architecture, design, implementation, and testing, with a focu

About the Author

Rod Johnson

Rod is the father of Spring. The Spring Framework open source project began in February 2003, based on SpringSource's Spring framework published with Rod's best-selling Expert One-on-One Java EE Design and Development.

Thanks to our partners

Program

INTRODUCTION TO SPRING

  • Java configuration and the Spring application context
  • @Configuration and @Bean annotations
  • @Import: working with multiple configuration files
  • Launching a Spring Application and obtaining Beans

SPRING JAVA CONFIGURATION: A DEEPER LOOK

  • External properties & Property sources
  • Environment abstraction
  • Bean scope, bean profiles
  • Spring Expression Language (SpEL)
  • How it Works: Inheritance based proxies

ANNOTATION-BASED DEPENDENCY INJECTION

  • Autowiring and component scanning
  • Java configuration versus annotations, mixing.
  • Lifecycle annotations: @PostConstruct and @PreDestroy
  • Stereotypes and meta-annotations

XML DEPENDENCY INJECTION

  • XML syntax, constructor & setter injection
  • Resource prefixes
  • Namespaces and best practices when using XML
  • XML profile selection
  • Using Spring FactoryBeans with Java or XML configuration

THE BEAN LIFECYCLE: HOW DOES SPRING WORK INTERNALLY?

  • The init phase: available interceptors
  • The init phase: what is the difference between XML, annotations and Java configuration?
  • The use and destruction phases

TESTING A SPRING-BASED APPLICATION

  • Spring and Test Driven Development
  • @ContextConfiguration and @RunWith annotations
  • Application context caching and the @DirtiesContext annotation
  • Profile selection with @ActiveProfiles
  • Easy test data setup with @Sql

ASPECT-ORIENTED PROGRAMMING

  • What problems does AOP solve?
  • Differences between Spring AOP and AspectJ
  • Defining pointcut expressions
  • Implementing an advice: @Around, @Before, @After

DATA ACCESS AND JDBC WITH SPRING

  • How Spring integrates with existing data access technologies
  • DataAccessException hierarchy
  • Implementing caching using @Cacheable
  • jdbc namespace and Spring‘s JdbcTemplate

DATABASE TRANSACTIONS WITH SPRING

  • Transactions overview
  • Transaction management with Spring
  • Isolation levels, transaction propagation and rollback rules
  • Transactions and integration testing

JPA WITH SPRING AND SPRING DATA

  • Quick introduction to ORM with JPA
  • Benefits of using Spring with JPA
  • JPA configuration in Spring
  • Spring Data JPA dynamic repositories

SPRING IN A WEB APPLICATION

  • Configuring Spring in a Web application
  • Introduction to Spring MVC, required configuration
  • Controller method signatures
  • Views and ViewResolvers
  • Using @Controller and @RequestMapping annotations

SPRING BOOT

  • Using Spring Boot to bypass most configuration
  • Simplified dependency management with starter POMs
  • Packaging options, JAR or WAR
  • Easily overriding Spring Boot defaults

SPRING BOOT - GOING FURTHER

  • Going beyond the default settings
  • Customizing Spring Boot configuration
  • Logging control
  • Configuration properties using YAML
  • Boot-driven testing

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

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

MICROSERVICES WITH SPRING CLOUD

  • Microservice Architectures
  • Challenges with cloud-native applications
  • Using Spring Cloud
  • Developing a simple microservice system
Audience

Audience

If you are an experienced Java EE Developer or Architect and you:

  • are interested in learning all about developing java applications with Spring
  • You have an upcoming project and need to learn Spring quickly
  • You like to become Spring Certified to improve your career opportunities

Prerequisites

To benefit from this Core Spring course you will need to have a basic understanding of application development using Java

Bring your own hardware

Delegates are requested to bring their own laptop for this course, with Java 6 installed. If you are unable to bring a laptop for the course, please contact the sales team on +44 20 7183 9040, or email the sales team.

Please submit all laptop requests a minimum of 48 hours prior to the course as laptops are subject to availability.