Spring & Hibernate Course

Description:

This training is relevant for high experienced java programmers. The course includes two modules:

  • Spring Core training
  • Hibernate Training

As for Spring Module, it is designed for spring developers, which want to know how spring is working and how spring can be customized. During the training we will drill down deep to spring core, we will see how you can write bean post processors and bean factory post processors, how to configure different spring profiles, how to write custom scopes. We will talk about different spring problems and solutions. We will compare strategies of different context types (xml, annotations, java config and groovy config). What are their advantages, and when to use what?

The second module will provide students with the knowledge about Hibernate – a powerful implementation of the JPA2 standard persistence platform for Java applications.

In this course the students will learn and understand how to use Hibernate to bridge between the Object Oriented domain and the relational one.

Experienced Java Developers, with knowledge of relational DB

Module I – Spring Core

  • Design patterns
    • Factory
    • Singleton
    • Chain of responsibilities
    • Proxy
  • Reflections
    • Annotations
    • Dynamic Proxy
    • CGLib
  • Spring concepts
    • IOC
    • Dependency Injection
    • Container
    • Bean
  • Spring XML context
  • Bean lifecycle
  • Init / destroy method
  •  BeanPostProcessors / BeanFactoryPostProcessors
  • ApplicationListeners
  • FactoryBeans
  • Annotation Config
    • Standard and Spring annotations
    • Qualifiers
  • Java Config
    • Bean Declaration
    • Static beans
    • Refreshing prototypes in singletons
  • Proxy Mode
  • Java Config problems
  • What is better (Java Config / Xml / Annotations)
  • Spring profiles / Conditional
  • Tests with Spring

Spring AOP

  • Aspect
  • Advice
  • JoinPoint
    • @Before / @After
    • @AfterReturning / AfterThrowing
    • @Around
  • Pointcut
  • Weaving
  • Best practice
    • Custom annotations
    • Exception handling
    • Logging

Spring Boot

  • How magic happens
  • @OnBeanCondition
  • How to override default configuration
  • Spring-boot-maven-plugin
  • spring.io

Web & Spring MVC

  • Servlet – are they still exists?
  • Rest
  • Controllers / RestControllers
  • RestTemplate
  • Tomcat
    • xml
    • without web.xml
    • without tomcat

Module II – Hibernate

  • Hibernate general overview
  • Defining persistent Java classes
  • Mapping POJO classes to DB
    • Identity generators
    • Mapping inheritance hierarchy
  • DB connectivity
    • Configuration
    • The SessionFactory
    • Session
  • Object identity
    • Identity types
    • Surrogate ids
    • Equals and hash code
  • Persistent object lifecycle
  • Lazy initialization of collections
  • Entity association mapping
    • 1-1
    • 1-n
    • n-m
    • Cascade
  • Using JPA
    • The Hibernate Entity Manager
    • JPA Annotations
    • Hibernate JPA extensions
  • Querying
  • Transactions
  • The 2nd level cache
  • Spring-ORM
    • EntityManagerFactoryBean
    • Persistent context
    • Transaction Manager
    • Declarative transactions
    • Isolation
    • Propagation
    • Nested Transactions
      • Proxy problems
      • SelfInject solution
יבגני הינו מרצהיבגני הינו מנהל תחום ומוביל טכנולוגי Big Data Development בנאיה טכנולוגיות, מומחה Java ומרצה בכיר בנאיה אקדמי
  • על פי דרישה מועד פתיחה
  • 09:00-16:30daysימים ושעות
  • 48academic hours שעות אקדמיות
  • מתקדםcourse levelרמת הקורס
  • עברית/Englishlanguageשפת הדרכה
  • לבדיקת התאמה לקורס
  • [current_url]

    השאירו פרטים ונחזור אליכם בהקדם!