Spring Framework and Spring Boot

  1. Data Access and Transaction Management
    1. Spring's Data Access Philosophy
      1. Abstraction of Data Access APIs
        1. Exception Translation
          1. DataAccessException Hierarchy
          2. Template-Based Approach
            1. Benefits and Usage
          3. JDBC Support
            1. JdbcTemplate
              1. Core Methods
                1. Handling SQL Exceptions
                  1. RowMapper Interface
                  2. NamedParameterJdbcTemplate
                    1. Named Parameters in Queries
                      1. SqlParameterSource
                      2. SimpleJdbcInsert
                        1. Simplified Insert Operations
                        2. SimpleJdbcCall
                          1. Stored Procedure Calls
                        3. Object-Relational Mapping Integration
                          1. JPA Integration
                            1. LocalContainerEntityManagerFactoryBean
                              1. Entity Management
                                1. JpaTransactionManager
                                2. Hibernate Integration
                                  1. Session Management
                                    1. Transaction Handling
                                      1. HibernateTemplate
                                    2. Transaction Management
                                      1. ACID Properties
                                        1. Atomicity
                                          1. Consistency
                                            1. Isolation
                                              1. Durability
                                              2. Declarative Transaction Management
                                                1. @Transactional Annotation
                                                  1. Usage on Classes
                                                    1. Usage on Methods
                                                    2. Transaction Propagation Levels
                                                      1. REQUIRED
                                                        1. REQUIRES_NEW
                                                          1. SUPPORTS
                                                            1. NOT_SUPPORTED
                                                              1. MANDATORY
                                                                1. NEVER
                                                                  1. NESTED
                                                                  2. Transaction Isolation Levels
                                                                    1. DEFAULT
                                                                      1. READ_UNCOMMITTED
                                                                        1. READ_COMMITTED
                                                                          1. REPEATABLE_READ
                                                                            1. SERIALIZABLE
                                                                            2. Read-Only and Timeout Settings
                                                                              1. Rollback Rules
                                                                              2. Programmatic Transaction Management
                                                                                1. TransactionTemplate
                                                                                  1. PlatformTransactionManager
                                                                                    1. Manual Transaction Demarcation
                                                                                    2. Transaction Managers
                                                                                      1. DataSourceTransactionManager
                                                                                        1. JpaTransactionManager
                                                                                          1. JtaTransactionManager