Rod Johnson will discuss the core concepts of Spring and how they are combined to facilitate writing real-world applications based on POJOs. You will see how:
• IoC and Dependency Injection provide sophisticated wiring for application POJOs • AOP allows declarative services to be applied to POJOs • How and why Spring offers a portable service abstraction in many areas, including transaction management and data access
You will see how these three sides of the Spring triangle work together to provide a comprehensive framework, and look at other concepts consistently seen throughout Spring, such as:
• Templates and callbacks • The Spring approach to exception handling
You’ll see how to help Spring help you once you understand these fundamental concepts.
Even if you’re an experienced Spring user, you will benefit from Rod’s views on some of the key design decisions central to Spring. If you’re new to Spring, this will be a great way to understand what it’s all about and why it works the way it does.
In this session, Thomas and Rod will illustrate JdbcTemplate and other key parts of Spring’s JDBC abstraction library. The focus will be on how these features can be used to greatly simplify working with the JDBC API, even when you need to perform advanced operations.
This session will feature live coding using the org.springframework.test integration testing framework and an Oracle database. Thomas and Rod will cover:
• Deciding what to do in the database, and what in Java • Deciding when to use O/R mapping, and when to use a relational approach • Issuing dynamic SQL • Working with database-specific exceptions, such as exceptions thrown from PL/SQL triggers and stored procedures • Portable BLOB handling • Batching to meet extreme performance requirements
Note: Although the examples will use Oracle, the concepts discussed in this session are relevant to all advanced JDBC usage.
Join Rob, Rob and Adrian for a Spring Experience session on the Middle Tier.
This Spring Experience Session will be a focused Birds of a Feather.
Dependency Injection seems like a simple concept. In this session, Rod and Keith will explain:
• The important corner cases where simple DI falls down, and how Spring provides elegant, powerful solutions, based on extensive experience • “Factory beans” and when to use them • The different strategies for turning legacy code into Spring-managed services • The relationship between annotations and dependency injection • The combination of DI and AOP, and why it’s so important • Extending the Spring IoC container without changing Spring itself • The many value adds that a powerful DI container can provide
In this session, Rod and Keith will explain:
• The important corner cases where simple DI falls down, and how Spring provides elegant, powerful solutions, based on extensive experience • “Factory beans” and when to use them • The different strategies for turning legacy code into Spring-managed services • The relationship between annotations and dependency injection • The combination of DI and AOP, and why it’s so important • Extending the Spring IoC container without changing Spring itself • The many value adds that a powerful DI container can provide
Everyone knows that Dependency Injection facilitates unit testing. However, Spring is far more than a simple Dependency Injection container, and it provides a holistic solution for making your code easier to test. The emphasis is on testing outside an application server or container, thus greatly improving productivity.
In this session, Rod will discuss:
• How to unit test Spring applications • Mock objects and when to use them • Issues around testing the persistence layer • Integration testing and the support that Spring provides for it • Testing web applications
The presentation will include a demo showing how an application can be tested as it is developed, without developers needing to wait for container startup and deployment.
Developers often miss the fact that Spring is highly extensible, without the need to change any code in Spring itself. This means that Spring makes an excellent base for custom frameworks implementing project or organization-specific functionality.
In this session, Rod will discuss:
• How to use BeanPostProcessors to customize the behaviour of the Spring IoC container • How to register custom property editors to teach the IoC container about your own types • How to use Spring AOP to customize the behaviour of your POJOs • How to use auto proxy creators to cause custom aspects to be applied automatically throughout your codebase • How to use the extensible configuration mechanism introduced in Spring 1.3
Examples will include custom annotation processing and application-specific lifecycle callbacks,
Everyone knows that Dependency Injection facilitates unit testing. However, Spring is far more than a simple Dependency Injection container, and it provides a holistic solution for making your code easier to test. The emphasis is on testing outside an application server or container, thus greatly improving productivity.
In this session, Rod will discuss:
• How to unit test Spring applications • Mock objects and when to use them • Issues around testing the persistence layer • Integration testing and the support that Spring provides for it • Testing web applications
The presentation will include a demo showing how an application can be tested as it is developed, without developers needing to wait for container startup and deployment.