Course #:WA1479 Developing J2EE Applications Using Spring 2.0 and Eclipse Training This course provides students with the knowledge needed to use the Spring Framework to develop flexible, testable and maintainable J2EE (Java 2 Enterprise Edition) applications Topics The Need for Spring Inversion of Control Wiring Beans Aspect-Oriented Programming in Spring including support for AspectJ Database Integration and Transaction Management Spring MVC, form tag library and portlet framework Web Application Alternatives Accessing Enterprise Services Using Beans Implemented in Dynamic Languages What you will learn After completing this course, the student 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 and form tag library to develop flexible web applications Integrate Spring with the Struts web application framework Access enterprise services including JMS, email, job schedulers and JNDI Incorporate classes written in dynamic languages using Spring Audience Software designers, developers and programmers Prerequisites Understand Servlets and JSP – Course WA1259 addresses the Servlet and JSP topics Duration Three days. Outline of Developing J2EE Applications Using Spring 2.0 and Eclipse 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. Aspect-Oriented Programming in Spring Topics What is AOP? Cross-Cutting Concerns AOP Concepts AOP in Spring 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 3. 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 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. 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 5. 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 6. 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 Sending JMS Messages Receiving JMS Messages Converting Messages Asynchronous Reception of JMS Messages Spring 2.0 Dynamic Language Support Spring 2.0 Dynamic Language Support Spring 2.0 Dynamic Language Support Spring 2.0 Dynamic Language Support Spring 2.0 Dynamic Language Support Spring 2.0 Dynamic Language Support Appendix A. Java SE 5 in Spring 2.0 Java SE 5 Use in Spring 2.0 @AspectJ JPA @Required @Required in Java Code Configuration of @Required @Transactional @Transactional in Java Code Configuration of @Transactional @Transactional Properties @Transactional Propagation @Transactional Isolation @Transactional Exceptions SimpleJdbcTemplate Regular JdbcTemplate Use Use of SimpleJdbcTemplate Summary 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 #:WA1479 Developing J2EE Applications Using Spring 2.0 and Eclipse Training This course provides students with the knowledge needed to use the Spring Framework to develop flexible, testable and maintainable J2EE (Java 2 Enterprise Edition) applications Topics The Need for Spring Inversion of Control Wiring Beans Aspect-Oriented Programming in Spring including support for AspectJ Database Integration and Transaction Management Spring MVC, form tag library and portlet framework Web Application Alternatives Accessing Enterprise Services Using Beans Implemented in Dynamic Languages What you will learn After completing this course, the student 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 and form tag library to develop flexible web applications Integrate Spring with the Struts web application framework Access enterprise services including JMS, email, job schedulers and JNDI Incorporate classes written in dynamic languages using Spring Audience Software designers, developers and programmers Prerequisites Understand Servlets and JSP – Course WA1259 addresses the Servlet and JSP topics Duration Three days. Outline of Developing J2EE Applications Using Spring 2.0 and Eclipse 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. Aspect-Oriented Programming in Spring Topics What is AOP? Cross-Cutting Concerns AOP Concepts AOP in Spring 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 3. 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 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. 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 5. 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 6. 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 Sending JMS Messages Receiving JMS Messages Converting Messages Asynchronous Reception of JMS Messages Spring 2.0 Dynamic Language Support Spring 2.0 Dynamic Language Support Spring 2.0 Dynamic Language Support Spring 2.0 Dynamic Language Support Spring 2.0 Dynamic Language Support Spring 2.0 Dynamic Language Support Appendix A. Java SE 5 in Spring 2.0 Java SE 5 Use in Spring 2.0 @AspectJ JPA @Required @Required in Java Code Configuration of @Required @Transactional @Transactional in Java Code Configuration of @Transactional @Transactional Properties @Transactional Propagation @Transactional Isolation @Transactional Exceptions SimpleJdbcTemplate Regular JdbcTemplate Use Use of SimpleJdbcTemplate Summary 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