RKCP Information Technology




Spring
Home » Courses   » Spring 3 & 4

Spring

Learn Spring Introduction, Java Configuration, Dependency Injection, AOP, Database Transactions, JDBC & Spring Security in Spring Framework Tutorial/Training & Certification-LIVE Online & Classroom sessions

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 related technologies like Spring Boot Spring Data Spring Security and micro-services in an intensely productive hands-on setting.

This course is a prerequisite for the Spring Professional certification exam. Completion of this training entitles each student to receive one free Spring Professional certification exam attempt.


Objective

At the end of the training, you should have an understanding of Spring and associated technologies and be able to do the following:

  • Use the Spring Framework to develop Java applications.
  • Take the Spring Boot shortcut to productivity.
  • Use dependency injection to set up and configure applications.
  • Test Spring-based applications.
  • Configure Spring applications using Java configuration, annotations, or XML.
  • Use Spring Data JPA and JDBC to rapidly implement relational database access.
  • Use Spring support for transactions.
  • Use aspect-oriented programming (AOP) to declaratively add behavior to applications.
  • Develop a basic Web application with Spring MVC.
  • Use Spring Security to secure Web applications.
  • Use Spring to easily build REST web services.
  • Start the journey to Microservices and Cloud Native Applications.

Duration - 4 Days


Prerequisites

Experience with developing applications using Java


Syllabus

Expand All
  • 1. 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
  • 2. 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
  • 3. ANNOTATION-BASED DEPENDENCY INJECTION
    • Autowiring and component scanning
    • Java configuration versus annotations, mixing.
    • Lifecycle annotations: @PostConstruct and @PreDestroy
    • Stereotypes and meta-annotations
  • 4. XML DEPENDENCY INJECTION
    • XML syntax, constructor & setter injection
    • Resource prefixes
    • Namespaces and best practices when using XML
    • XML profile selection
  • 5. 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
  • 6. 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
  • 7. ASPECT-ORIENTED PROGRAMMING
    • What problems does AOP solve?
    • Differences between Spring AOP and AspectJ
    • Defining pointcut expressions
    • Implementing an advice: @Around, @Before, @After
  • 8. 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
  • 9. DATABASE TRANSACTIONS WITH SPRING
    • @Transactional annotation
    • Transactions configuration: XML versus annotations
    • Isolation levels, transaction propagation and rollback rules
    • Transactions and integration testing
    • Should you use read-only transactions?
  • 10. 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
  • 11. 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
  • 12. 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
  • 13. SPRING BOOT - GOING FURTHER
    • Going beyond the default settings
    • Customizing Spring Boot configuration
    • Logging control
    • Configuration properties using YAML
    • Boot-driven testing
  • 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
  • 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
  • 16. MICROSERVICES WITH SPRING CLOUD
    • Microservice Architectures
    • Challenges with cloud-native applications
    • Using Spring Cloud
    • Developing a simple microservice system