SPRING WITH HIBERNATE

Hibernate

  • Object-Relational Mapping
  • Hibernate Core Concepts
  • Hibernate Architecture
  • Overview of the Persistence Lifecycle
  • Hibernate Mappings
  • Configuring Hibernate
  • Working with Persistent Objects
  • Object Identity, the importance of equals() and hashcode()
  • Simple Relationships
  • Problem of Granularity
  • Problem Of Realtions
  • Problem Of Realtions
  • Unidirectional and Bidirectional Relationships
  • Working with Collections
  • Introduction to HQL – The Hibernate Query Language
  • Mapping Inheritance Hierarchies
  • Working with Hibernate Transactions
  • Using Hibernate Types and Creating Custom Types
  • Optimistic and Pessimistic Locking
  • ID generation strategies
  • Query by Criteria
  • Query by Example
  • Advanced Querying: Named Queries Grouping, Subqueries, Native SQL
  • Overview of supporting tools for Hibernate development
  • Working with Isolation Levels
  • Query Optimization
  • Bulk Operations
  • Store Procedures and Functions
  • Hibernate Caching Architecture
  • EHCache and JBossCache
  • Dealing with Legacy Schemas
  • Designing Effective DAOs
  • Using Domain Object in the Web Tier
  • Session Strategies and Hibernate

SPRING

  • Introduction to Spring Framework
  • Spring Modules
  • Controlling Object Creation
  • Persistence Support
  • Aspect-Oriented Programming
  • Web Applications
  • Integrating Other Frameworks

Core Techniques

  • Component-Based Software
  • The Factory Pattern
  • Inversion of Control
  • XML View: Declaring Beans
  • Java View: Using Beans
  • Singletons and Prototypes
  • Initializing Bean State

Dependency Injection

  • Dependency Injection
  • Single and Multiple Relationships
  • The Utility Schema
  • Autowiring
  • Bean Aliases
  • Order of Instantiation

Validation

  • Validators
  • The Errors Object
  • ValidationUtils
  • Error Messages and Localization
  • Nested Property Paths

Spring MVC

  • Servlets and JSPs: What's Missing
  • The MVC Pattern
  • The Front Controller Pattern
  • DispatcherServlet
  • JavaBeans as Web Components
  • Web Application Contexts
  • Handler Mappings
  • "Creating" a Model
  • View Resolvers

Customizing Spring MVC

  • HandlerMapping Options
  • ViewResolver Options
  • Chaining View Resolvers

Controllers and Commands

  • Working with Forms
  • Command Objects
  • Template Method Pattern
  • Command Controllers
  • MultiActionController

Web Binding and Validation

  • Property Editors
  • Custom Property Editors
  • Registrars
  • Validating Form Input

Form Controllers

  • Form Controllers
  • AbstractFormController
  • SimpleFormController
  • Spring Custom Tags
  • and Friends
  • Reporting Errors

Refining the Handling

  • Intercepting Filter Pattern
  • Exception Handling
  • Interceptors
  • Decorator Pattern
  • "Death By XML"

Persistence Tier

  • DAO Pattern
  • DaoSupport Hierarchy
  • The DataAccessException Hierarchy
  • JDBC DAOs
  • JdbcTemplate and RowMapper
  • Object/Relational Mapping
  • Hibernate® DAOs
  • Transaction Control
  • AOP vs. Annotations

Spring Context

  • Working with RMI,Burlap,Hessian
  • Working with EJB