<<

Java EE Programming: Spring 3.0 page 1

Meet the expert: Greg Matus combines his practical programming skills and mentoring excellence to develop the highest quality educational programs available. His technical focus includes developing programs and projects focused around advanced application development, performance, and tuning skills and technologies. His specialties include , advanced J2EE / JEE, AJAX, XML, Web Services, JSP, SQL, JDBC and Database topics, Oracle, Eclipse, WebLogic, and more.

Prerequisites: This an intermediate- level Spring 3.0 training course, designed for developers who need to understand how and when to use Spring in Java and JEE applications. You should have practical basic Java development experience.

Runtime: 17:37:01

Course description: The is an application framework that provides a lightweight container that supports the creation of simple to complex components in a non-invasive fashion. The Spring flexibility and transparency is congruent and supportive of incremental development and testing. The framework structure supports the layering of functionality such as persistence, transactions, view-oriented frameworks, and enterprise systems and capabilities. Spring makes JavaEE development easier. Spring simplifies common tasks and encourages good design based on programming to interfaces. Spring makes your application easier to configure and reduces the need for many JEE design patterns. Spring puts the OO design back into your JEE application. This Spring course will take an in-depth tour of the basic Spring framework, initially examining concepts such as Inversion of Control and Dependency Injection, and then working with the container and basic components. The improved Spring 3.0 configuration management options centered on the Spring Expression Language (SPEL) is covered. The course then moves into the areas of persistence and transactions, looking at various options including both JDBC and . You will then look at options for handling the view portion of MVC web architecture.

Course outline:

Introduction • Spring Jars • Method Factories • Using Property Files • Introduction • Demo: Spring Jars • Bean Creation - Singletons • PropertyPlaceholderConfigurer • Introduction to Spring • Spring DI Container • Managed Bean Lifecycle • Custom Property Editors • Benefits of Spring • Initializing the Container • Validation of Bean • Bean Post-Processors • Drawbacks: Traditional Java EE • Accessing Beans: Container Dependencies • Demo: Additional Features • Spring Framework: Goals • Demo: Accessing Beans • Autowiring • Summary • Nature of POJOs • Configuring Objects: Spring • Demo: Property Injection • Spring Architecture • XML Schema and DTD • Summary AOP • Key Features of Spring • Core Structure of the XML File • Introduction • Core Spring Principles • Defining and Naming Beans Config: Advanced Features • Spring Architecture • Configuring Spring • Typical Bean Creation • Introduction • Aspect Oriented Programming • POJOs and Interfaces: • Constructor Argument Matching • init and destroy Methods • What is AOP Problems • Distinguishing ref and value • Other Advanced Features • Cross Cutting Concerns • POJOs and Interfaces • Allowed conversions for value • Spring 3 • What is an Aspect • Spring is an Object Factory • Examples of ref and value • @Resource • Aspects and Decoupling • Dependency Injection • Summary • @Autowired • Structure of Proxy - version 1 • Dependency Injection: Example • @Component • Structure of Proxy - version 2 • Complete Example Property Injection • @Component Specializations • Tradeoffs Between Styles • Demo: Intro to Spring • Introduction • @Required • Some AOP Vocabulary • Summary • DI: Bean Properties • Demo: Config Advanced • Cross Cutting Concerns • DI: Using Nested Syntax Features • Why is AOP so Important Spring Configuration • Special Handling for Collections • Summary • Summary Crosscutting • Introduction • Collection Based Properties Concerns • Dependency Injection & Testing • Initializing to a Null Value Config: Additional Features • Summary • Testing with Mocks • Factories: Adv. Bean Creation • Introduction • Testing with Mocks: UML • Static Bean Factory • Overview of Factory Beans AOP in Spring Diagram • XSL Transform: Factory Beans • Introduction • Spring Architecture • Configuring the XSLFactory • Spring: AOP in a Nutshell Bean • Complete AOP HelloWorld • Spring: Pre-built Factory Beans Example • Bean Definition Re-use (Continued on page 2)

LearnNowOnline www.LearnNowOnline.com powered by Java EE Programming: Spring 3.0 page 2

• The Simplest Advice • Demo: Adding Statistics • Introduction Advice • Using the MultiActionController • Demo: Ice Cream • Demo: Search Statistics Advice • Summary • Handling Form Requests • Complete Advice & Config File • Demo: • Demo: MVC Views • Demo: Adding Welcome Advice BeanNameAutoProxyCreator Persistence In Spring • Demo: Annotations Approach • Summary • Demo: Test Client • Introduction • Demo: Debugging • Summary • Spring Architecture • Demo: Enabling View More About Interceptors • DAO Implementations • Summary • Introduction Annotations • Transaction Support • MethodBeforeAdvice • Introduction • Continued: Transaction Support Spring MVC Form Handling • The Method Class • Relationship to AspectJ • Isolation Level Concepts • Introduction • Three Technologies of Weaving • Review of Java Annotations • Propagation Behavior • Spring MVC Annotations • The Generated Proxy Object • Example: Java • Transaction Config • ClassPath Scanning • The Cost of Using a Proxy • Using Annotations • Programmatic Transaction • annotation-driven • Aspects/Proxies Costs/Benefits • Annotations: More Info • Declarative Transactions • Annotation Controller Mapping • Four Kinds of Advice • Three Forms of Annotations • Benefits of Declarative Trans • How @RequestMapping Works • Spring Advice Types • Annotations to Create Aspects • Two Forms of Declarative Trans • MVC Handler Method • MethodBeforeAdvice • The Spring Config File • The Java Code is Simple Parameters • AfterReturningAdvice • Intro to Annotation Syntax • Example: Declarative • The Form • ThrowsAdvice • Other Advice Types Annotations • The Spring Form Tags • Demo: Interceptors • ProceedingJoinPoint • Summary • Using a PropertyEditor • Summary • Around advice • Adding Validation • More About Aspect Parameters Spring JDBC • Additional Functionality Method Interceptor • Using args(argName) • Introduction • Demo: Spring MVC Form • Introduction • 3 Types of Pointcuts • Overview Handling • MethodInterceptor • Details of: name-pattern • Switching Between • Demo: Implement AddDVD • ExampleInterceptor • Examples: execution Pointcut DataSources • Summary • Demo: Around Advice • Examples: bean(beanName) • JDBC DAO Implementation • Demo: Initial Test • Pointcut Pattern Expressions • The jdbcTemplate • Demo: Debugging • Demo: Annotations • RowMapper • Summary • Summary • RowCallbackHandler • Sending SQL Join Points and Pointcuts AOP Annotations • Exception Handling • Introduction • Introduction • Operation Classes • Joinpoints • Advice: Introductions • Demo: Spring JDBC • Pointcuts - Specify Joinpoints • What is an Introduction • Demo: Extending jdbcDao • Where do Joinpoints fit • Introduction: Example • Summary • AOP Definitions • Difference from Around Advice • PointCuts • Complete Working Example Spring MVC • Static PointCuts • Example: The Lockable • Introduction • Dynamic PointCuts • Spring MVC • Pre-built Spring PointCuts • Example: Underlying POJO • Overview of Spring MVC • Regular Expression PointCuts • Example: Client Code • The DispatcherServlet • Custom PointCut • Example: What are the • The WebApplicationContext Implementations Challenges • Workflow of Request Handling • Pointcuts util class • Generated Proxy Object • Mapping URLs to Controllers • The Advisor Structure • Using Handler Mappings • DefaultPointcutAdvisor • Create a LockableImpl • Handler Interceptors • RegexpMethodPointcutAdvisor • The Aspect Itself • Review of Architecture • Overview of the AOP • Overview of the Code • ModelAndView & View Components • Declaring the Aspect: mixin • The View in ModelAndView • Proxy Configuration • Declaring the Aspect: • Demo: Spring MVC • ProxyConfig interaction • Summary • ProxyFactoryBean • Declaring the Interaction • BeanNameAutoProxyCreator • @Before Interaction Behavior Spring MVC Views • • @Before Aspect Declaration • Introduction DefaultAdvisorAutoProxyCreator • Pointcut Specification • ModelAndView & View • IsLockable Annotation • A Custom View Example • Overview of the AOP • Spring Config File • ViewResolvers Components • Controllers • Summary

IOC and Annotation Based AOP • Introduction

LearnNowOnline www.LearnNowOnline.com powered by