Course #:WA1552 Developing J2EE Applications Using Spring Framework and RAD6 Training This course provides students with the knowledge needed to use the Spring Framework and Rational Application Developer V6 (RAD6) to develop flexible, testable and maintainable J2EE enterprise applications. Objectives Upon completion of this course, you should be able to: Understand the need for the Spring framework Use inversion of control to increase flexibility and testability of applications Understand and use aspect-oriented programming to better handle cross-cutting concerns Integrate Spring with the Hibernate ORM framework Declaratively and programmatically manage transactions in Spring Use the Spring MVC web framework to develop flexible web applications Integrate Spring with the Struts web application framework Access enterprise services including JMS, email, job schedulers and JNDI Topics The Need for Spring Inversion of Control Wiring Beans Aspect-Oriented Programming in Spring Database Integration and Transaction Management Spring MVC Web Application Alternatives Accessing Enterprise Services Audience Software designers, developers and programmers Prerequisites To succeed fully in this course, students should be able to: Understand Servlets and JSP – Course WA1259 addresses the Servlet and JSP topics Duration Three days Outline of Developing J2EE Applications Using Spring Framework and RAD6 Training 1. Introduction to the Spring Framework Topics What is the Spring Framework? Spring Characteristics Spring Modules Why Spring? Problems with EJB Spring Philosophies Alternatives to Spring Simple Example What is Inversion of Control? IoC Example Spring Containers Bean Creation Bean Destruction Wiring Beans Bean Element Dependency Injection Primitives and Strings Dependency Injection - References Dependency Injection Inner Beans Dependency Injection Lists, Arrays and Sets Dependency Injection Maps Dependency Injection - Properties Constructor Injection Constructor Injection Handling Multiple Arguments Constructor vs. Setter Injection Autowiring Autowiring Example Autowiring Mixing Explicit and Autowiring Special Spring Interfaces BeanPostProcessor BeanFactoryPostProcessor PropertyPlaceholderConfigurer CustomEditorConfigurer Awareness Interfaces Listening For and Publishing Events XML Schema-based Configuration XML Schema jndi Example XML Schema util Example 2. Database Integration and Transaction Management Topics DAO Support in Spring DataAccessException Using DataSources DAO Templates DAO Templates and Callbacks Using Spring with JDBC Writing Data with JdbcTemplate Reading Data with JdbcTemplate Reading Single-Row Scalar Data Spring 2.0 NamedParameterJdbcTemplate ORM Tool Support in Spring Hibernate Hibernate Session Factory Spring LocalSessionFactoryBean Spring HibernateTemplate Spring HibernateCallback HibernateTemplate Convenience Methods LocalEntityManagerFactoryBean Spring JpaTemplate Spring JpaCallback JpaTemplate Convenience Features Transactions Transaction Management in Spring Spring Transaction Managers Programmatic Transactions 3. Introduction to Aspect-Oriented Programming Topics What is AOP? Cross-Cutting Concerns AOP Concepts AOP in Spring Declarative Transactions Transaction Attributes Transaction Propagation Behavior Transaction Isolation Levels Read-Only and Timeouts NameMatchTransactionAttributeSource Declaring Transactions with Metadata Inheriting Transaction Details Autoproxying Transactions Spring 2.0 XML Syntax for Transaction Advice 4. Aspect-Oriented Programming in Spring Topics Types of Advice Before Advice Before Advice Example After Returning Advice Around Advice Around Advice Example Throws Advice Pointcuts Advisors NameMatchMethodPointcut NameMatchMethodPointcut Example Perl5RegexpMethodPointcut ControlFlowPointcut IntroductionInterceptor IntroductionInterceptor Example DelegatingIntroductionInterceptor IntroductionAdvisor BeanNameAutoProxyCreator BeanNameAutoProxyCreator Example DefaultAdvisorAutoProxyCreator DefaultAdvisorAutoProxyCreator Example Metadata Autoproxying Spring 2.0 AOP @AspectJ Aspects in @AspectJ Pointcuts in @AspectJ execution Pointcut Composite Pointcuts in @AspectJ Before Advice in @AspectJ After Returning Advice in @AspectJ After Throwing Advice in @AspectJ After (Finally) Advice in @AspectJ Around Advice in @AspectJ Introductions in @AspectJ Accessing Parameters in @AspectJ Determining Parameter Names in @AspectJ Advice Ordering in @AspectJ XML Schema-based AOP Support Declaring Pointcuts Before Advice in XML Syntax After Returning Advice in XML Syntax Introductions in XML Syntax Advisors in XML Syntax 5. Spring MVC Topics Spring MVC Spring MVC Components DispatcherServlet Context Loaders Spring MVC Example Mapping Web Requests BeanNameUrlHandlerMapping CommonsPathMapHandlerMapping Using Multiple Handler Mappings Controller Hierarchy AbstractCommandController SimpleFormController AbstractWizardFormController MultiActionController ThrowawayController View Resolution InternalResourceViewResolver BeanNameViewResolver XmlViewResolver ResourceBundleViewResolver Using Multiple View Resolvers Binding Views to Models Spring 2.0 Form Tags form and input Tags password and hidden Tags checkbox Tag radiobutton Tag textarea Tag select Tag option Tag options Tag errors Tag Portlets Spring 2.0 Portlet MVC Framework Spring 2.0 Portlet MVC Framework Spring 2.0 Portlet MVC Framework Spring 2.0 Portlet MVC Framework Spring 2.0 Portlet MVC Framework Spring 2.0 Portlet MVC Framework 6. Web Application Alternatives Topics Velocity Templates Configuring Velocity in Spring Velocity View Resolution Using Velocity Utility Tools Accessing Session/Request Attributes in Velocity Binding Velocity Views to the Model FreeMarker Configuring FreeMarker in Spring FreeMarker View Resolution Accessing Session/Request Attributes in FreeMarker Binding FreeMarker Views to the Model Jakarta Tiles Configuring Tiles in Spring Tiles View Resolution Tiles Component Controller Creating Excel Spreadsheets Creating PDF Documents Creating Other Non-HTML Documents Jakarta Struts Configuring Spring in Struts Spring-Aware Struts Actions Delegate Requests to Struts Action Beans DelegatingRequestProcessor 7. Accessing Enterprise Services Topics Remoting in Spring Clients of RMI Services Exporting RMI Services Hessian and Burlap Clients of Hessian/Burlap Services Exporting Hessian/Burlap Services Spring HTTP Invoker Clients of HTTP Invoker Services Exporting HTTP Invoker Services Clients of EJB Services Clients of Web Services Accessing Objects in JNDI Using the Quartz Scheduler Configuring a Quartz Job Scheduling a Quartz Job Starting Quartz Jobs Scheduling a Quartz Job Using a Cron Expression MethodInvokingJobDetailFactoryBean Sending Email Message-Oriented Middleware and JMS Spring JMS Resources JMS Templates and Callbacks Sending JMS Messages Receiving JMS Messages Converting Messages Asynchronous Reception of JMS Messages Spring 2.0 Dynamic Language Support We regularly offer classes in these and other cities. Atlanta, Austin, Baltimore, Calgary, Chicago, Cleveland, Dallas, Denver, Detroit, Houston, Jacksonville, Miami, Montreal, New York City, Orlando, Ottawa, Philadelphia, Phoenix, Pittsburgh, Seattle, Toronto, Vancouver, Washington DC. View Course Outline Share This Request On-Site or Customized Course Info Lab Setup Guide REGISTER FOR A COURSEWARE SAMPLE x Sent First Name Last Name Email Request On-Site or Customized Course Info x Sent First Name Last Name Phone Number Company Name Email Question
Course #:WA1552 Developing J2EE Applications Using Spring Framework and RAD6 Training This course provides students with the knowledge needed to use the Spring Framework and Rational Application Developer V6 (RAD6) to develop flexible, testable and maintainable J2EE enterprise applications. Objectives Upon completion of this course, you should be able to: Understand the need for the Spring framework Use inversion of control to increase flexibility and testability of applications Understand and use aspect-oriented programming to better handle cross-cutting concerns Integrate Spring with the Hibernate ORM framework Declaratively and programmatically manage transactions in Spring Use the Spring MVC web framework to develop flexible web applications Integrate Spring with the Struts web application framework Access enterprise services including JMS, email, job schedulers and JNDI Topics The Need for Spring Inversion of Control Wiring Beans Aspect-Oriented Programming in Spring Database Integration and Transaction Management Spring MVC Web Application Alternatives Accessing Enterprise Services Audience Software designers, developers and programmers Prerequisites To succeed fully in this course, students should be able to: Understand Servlets and JSP – Course WA1259 addresses the Servlet and JSP topics Duration Three days Outline of Developing J2EE Applications Using Spring Framework and RAD6 Training 1. Introduction to the Spring Framework Topics What is the Spring Framework? Spring Characteristics Spring Modules Why Spring? Problems with EJB Spring Philosophies Alternatives to Spring Simple Example What is Inversion of Control? IoC Example Spring Containers Bean Creation Bean Destruction Wiring Beans Bean Element Dependency Injection Primitives and Strings Dependency Injection - References Dependency Injection Inner Beans Dependency Injection Lists, Arrays and Sets Dependency Injection Maps Dependency Injection - Properties Constructor Injection Constructor Injection Handling Multiple Arguments Constructor vs. Setter Injection Autowiring Autowiring Example Autowiring Mixing Explicit and Autowiring Special Spring Interfaces BeanPostProcessor BeanFactoryPostProcessor PropertyPlaceholderConfigurer CustomEditorConfigurer Awareness Interfaces Listening For and Publishing Events XML Schema-based Configuration XML Schema jndi Example XML Schema util Example 2. Database Integration and Transaction Management Topics DAO Support in Spring DataAccessException Using DataSources DAO Templates DAO Templates and Callbacks Using Spring with JDBC Writing Data with JdbcTemplate Reading Data with JdbcTemplate Reading Single-Row Scalar Data Spring 2.0 NamedParameterJdbcTemplate ORM Tool Support in Spring Hibernate Hibernate Session Factory Spring LocalSessionFactoryBean Spring HibernateTemplate Spring HibernateCallback HibernateTemplate Convenience Methods LocalEntityManagerFactoryBean Spring JpaTemplate Spring JpaCallback JpaTemplate Convenience Features Transactions Transaction Management in Spring Spring Transaction Managers Programmatic Transactions 3. Introduction to Aspect-Oriented Programming Topics What is AOP? Cross-Cutting Concerns AOP Concepts AOP in Spring Declarative Transactions Transaction Attributes Transaction Propagation Behavior Transaction Isolation Levels Read-Only and Timeouts NameMatchTransactionAttributeSource Declaring Transactions with Metadata Inheriting Transaction Details Autoproxying Transactions Spring 2.0 XML Syntax for Transaction Advice 4. Aspect-Oriented Programming in Spring Topics Types of Advice Before Advice Before Advice Example After Returning Advice Around Advice Around Advice Example Throws Advice Pointcuts Advisors NameMatchMethodPointcut NameMatchMethodPointcut Example Perl5RegexpMethodPointcut ControlFlowPointcut IntroductionInterceptor IntroductionInterceptor Example DelegatingIntroductionInterceptor IntroductionAdvisor BeanNameAutoProxyCreator BeanNameAutoProxyCreator Example DefaultAdvisorAutoProxyCreator DefaultAdvisorAutoProxyCreator Example Metadata Autoproxying Spring 2.0 AOP @AspectJ Aspects in @AspectJ Pointcuts in @AspectJ execution Pointcut Composite Pointcuts in @AspectJ Before Advice in @AspectJ After Returning Advice in @AspectJ After Throwing Advice in @AspectJ After (Finally) Advice in @AspectJ Around Advice in @AspectJ Introductions in @AspectJ Accessing Parameters in @AspectJ Determining Parameter Names in @AspectJ Advice Ordering in @AspectJ XML Schema-based AOP Support Declaring Pointcuts Before Advice in XML Syntax After Returning Advice in XML Syntax Introductions in XML Syntax Advisors in XML Syntax 5. Spring MVC Topics Spring MVC Spring MVC Components DispatcherServlet Context Loaders Spring MVC Example Mapping Web Requests BeanNameUrlHandlerMapping CommonsPathMapHandlerMapping Using Multiple Handler Mappings Controller Hierarchy AbstractCommandController SimpleFormController AbstractWizardFormController MultiActionController ThrowawayController View Resolution InternalResourceViewResolver BeanNameViewResolver XmlViewResolver ResourceBundleViewResolver Using Multiple View Resolvers Binding Views to Models Spring 2.0 Form Tags form and input Tags password and hidden Tags checkbox Tag radiobutton Tag textarea Tag select Tag option Tag options Tag errors Tag Portlets Spring 2.0 Portlet MVC Framework Spring 2.0 Portlet MVC Framework Spring 2.0 Portlet MVC Framework Spring 2.0 Portlet MVC Framework Spring 2.0 Portlet MVC Framework Spring 2.0 Portlet MVC Framework 6. Web Application Alternatives Topics Velocity Templates Configuring Velocity in Spring Velocity View Resolution Using Velocity Utility Tools Accessing Session/Request Attributes in Velocity Binding Velocity Views to the Model FreeMarker Configuring FreeMarker in Spring FreeMarker View Resolution Accessing Session/Request Attributes in FreeMarker Binding FreeMarker Views to the Model Jakarta Tiles Configuring Tiles in Spring Tiles View Resolution Tiles Component Controller Creating Excel Spreadsheets Creating PDF Documents Creating Other Non-HTML Documents Jakarta Struts Configuring Spring in Struts Spring-Aware Struts Actions Delegate Requests to Struts Action Beans DelegatingRequestProcessor 7. Accessing Enterprise Services Topics Remoting in Spring Clients of RMI Services Exporting RMI Services Hessian and Burlap Clients of Hessian/Burlap Services Exporting Hessian/Burlap Services Spring HTTP Invoker Clients of HTTP Invoker Services Exporting HTTP Invoker Services Clients of EJB Services Clients of Web Services Accessing Objects in JNDI Using the Quartz Scheduler Configuring a Quartz Job Scheduling a Quartz Job Starting Quartz Jobs Scheduling a Quartz Job Using a Cron Expression MethodInvokingJobDetailFactoryBean Sending Email Message-Oriented Middleware and JMS Spring JMS Resources JMS Templates and Callbacks Sending JMS Messages Receiving JMS Messages Converting Messages Asynchronous Reception of JMS Messages Spring 2.0 Dynamic Language Support We regularly offer classes in these and other cities. Atlanta, Austin, Baltimore, Calgary, Chicago, Cleveland, Dallas, Denver, Detroit, Houston, Jacksonville, Miami, Montreal, New York City, Orlando, Ottawa, Philadelphia, Phoenix, Pittsburgh, Seattle, Toronto, Vancouver, Washington DC. View Course Outline Share This Request On-Site or Customized Course Info Lab Setup Guide REGISTER FOR A COURSEWARE SAMPLE x Sent First Name Last Name Email Request On-Site or Customized Course Info x Sent First Name Last Name Phone Number Company Name Email Question