Course outline for Spring

Spring Course Objectives

By the end of this course, participants will have a good hold on development patterns with Spring 4

Pre-requisites for learning Spring

Participants must have some background knowledge of Java, Object Oriented Programming and Web Application technologies

Lab Setup

All participants must have access to a laptop with Internet connectivity

Training Mode

Online training for Spring

We provide:

  • Instructor led live training
  • Self-paced learning with access to expert coaches
  • 24x7 access to cloud labs with end to end working examples

All jnaapti sessions are 100% hands-on. All our instructors are engineers by heart. Activities are derived from real-life problems faced by our expert faculty. Self-paced hands-on sessions are delivered via Virtual Coach.

Classroom training for Spring

Classroom sessions are conducted in client locations in:

  • Bengaluru
  • Chennai
  • Hyderabad
  • Mumbai
  • Delhi/Gurgaon/NCR

Note: Classroom training is for corporate clients only

Detailed Course Outline for Spring

Getting Started

  • Dependency Management with Gradle (and Maven)
  • Setting up Eclipse
  • Hello World from the command line
  • Hello World from Eclipse

Spring Framework

  • Overview of Spring Projects
  • Dependency Injection concepts
  • Inversion of Control (IOC)
  • Dependency Injection

IoC Container

  • Overview of IoC container and Beans
  • Types of dependency injection
  • XML Based and Annotation Based
  • Bean Scopes
  • Bean Life Cycle
  • Types of Dependency Injection (and what is supported)
  • Autowiring and Autowiring modes
  • Spring Context Events

Spring – Overview of Some Components

  • Aspect Oriented Programming with Spring
    • PointCut
    • Advices
    • Caching in Spring – a case study of AOP
  • Unit Testing in Spring
    • Using Mock Objects
    • Mockito

Spring Boot

  • Use of the Spring Boot CLI
  • Creating a simple application
  • Using Embedded Servers
  • Building REST APIs
  • Integrating tests
  • Spring Boot Actuator
  • Integrating Thymeleaf templates
  • Integrating Security
  • Integrating a remote shell

Relational Database Design and ORM Issues

  • Understanding ER design and Object Modeling
  • Comparing relational database design to Object Modeling
  • Types of relationships
  • Database storage structures
  • Need for indexes to increase efficiency
  • Object Relational Mapping
  • Impedance mismatch in OR Mapping
  • Expectations from an ORM framework

Spring – Data Access

  • Spring Transaction Management with the Data Layer
    • Begin a transaction
    • Commit
    • Rolling back for specific exceptions
  • DAO with Spring
  • JDBC with Spring
  • Spring ORM and integration with Hibernate
  • Spring OXM
  • Support for other NoSQL stores (Spring Data JPA)

Spring – Security

  • Authentication and Authorization
  • Building a custom authentication manager
  • Authorities

Spring – MVC

  • The DispatcherServlet
  • Implementing Controllers
  • RequestMapping
  • Resolving Views
  • Using Security with Spring MVC