|
|
|
You Will Learn How To
- Develop scalable enterprise Java applications using Spring 3.1 and Hibernate
- Build application infrastructure using Inversion of Control (IoC) and Dependency Injection (DI)
- Modularise functionality using Aspect-Oriented Programming (AOP)
- Add a flexible application user interface with Spring Model View Controller (MVC)
- Implement object persistence with Hibernate
- Optimise data access with Hibernate Query Language (HQL)
Course BenefitsDeveloping robust Java enterprise applications is a complex process often requiring extensive infrastructure code. In this course, Java developers learn how to quickly build enterprise Javaapplications using the industry-standard Spring and Hibernate frameworks. Through intensive hands-on exercises, you learn how to implement high-performance applications while reducing development time.
Who Should AttendArchitects, programmers, engineers, managers and those involved in the development of complex enterprise-level Java applications. Java programming knowledge at the level of Course 471, "Java Programming Comprehensive Introduction", is assumed.
Hands-On TrainingExercises provide practical experience building enterprise applications, including:
- Injecting dependencies with Spring IoC
- Streamlining development with Spring 3.1 JDBC template support
- Applying modular code using AspectJ style AOP
- Implementing a Web Tier using Spring MVC
- Managing transactions with Spring 3.1 annotations
- Storing and retrieving data objects with Hibernate
- Integrating Spring and Hibernate
Course ContentIntroducing the Spring Framework
Spring architecture fundamentals
- Identifying Spring application components
- Defining the n-tier application architecture
Applying Inversion of Control (IoC) and Dependency Injection (DI)
- Delegating object creation to the Spring bean factory
- Controlling bean creation with scopes and factory methods
- Initialising and destroying beans
Minimising Code with Aspect-Oriented Programming (AOP)
Transparently applying common functionality
- Evaluating the benefits of AOP
- Defining advice, pointcuts and advisors
- Minimising configuration with Autoproxying
AspectJ style AOP
- AspectJ pointcut expression language
- Applying AspectJ style with annotations
- Building aspects with POJOs and XML schema-based configuration
Constructing an Effective DataAccess Tier with Spring
Simplifying data access with JDBC templates
- Streamlining runaway code with JDBC templates
- Structuring queries and callbacks for maintainability
Abstracting the Data Access Layer
- Supporting the Data Access Object (DAO) pattern
- Achieving implementation independence with platform agnostic exceptions
Managing transactions
- Analysing Java EE transaction support
- Controlling transactions with the Spring transaction manager
- Declaring transaction policies with XML and annotations
Building a Web Tier with Spring MVC
Processing Web requests
- Analysing Spring Model View Controller (MVC) architecture
- Mapping requests to controllers with annotations
- Processing commands, form submissions and simple wizards
- Server-side validation
Rendering the response
- Resolving views with ViewResolvers
- Spring JSP support
- View technology alternatives with Velocity
Building Ajax controllers
- Establishing the requirements for Ajax controllers
- Implementing REST-style URLs
- Returning JSON data
Persisting Objects with Hibernate
Integrating Hibernate
- Simplifying data access with O/R mapping
- Unravelling the Hibernate architecture
- Deploying and configuring Hibernate
Generating Hibernate applications
- Developing the persistent class
- Defining the Hibernate mapping rules
- Storing and retrieving Java objects
Handling Complex Object Relationships
The role of the Hibernate Session
- Establishing a thread-safe session object
- Defining object states: transient, persistent, detached
Mapping collections
- Persisting and retrieving collections
- Preserving collection order for data integrity
Strategies for building object associations
- Specifying one-to-many and many-to-many relationships
- Controlling the association life cycle
Effectively mapping inheritance relationships
- Applying class rules for inheritance
- Techniques for class-database mapping
Optimising Data Access
Applying Hibernate Query Language (HQL)
- Selecting and filtering queries
- Improving structure with named queries
- Augmenting HQL with native SQL
- Maximising Hibernate performance
- Accelerating data access via Hibernate cache
Integrating Spring and Hibernate
- Employing the Spring Hibernate template
- Configuring Hibernate resources in Spring
|
<< Back to Java
Red Hat Middleware, LLC. All rights reserved.Hibernate is a registered trademark and servicemark of Red Hat, Inc. Java is a trademark of Sun Microsystems, Inc.
Learning Tree AnyWareTM is a trademark of Learning Tree International, Inc. in the United States and other countries, and is covered by a patent application pending in the United States.
|
|
Course Dates
 | Most events below can be taken in-class or live, online from your home or office with AnyWare. |
| 18 - 21 Sep | Stockholm enrol | | 13 - 16 Nov | Stockholm enrol | UK Dates | | 19 - 22 Jun | London enrol | | 9 - 12 Oct | London enrol | | 19 - 22 Feb | London enrol | US Dates | | 12 - 15 Jun | New York enrol | | 26 - 29 Jun | Washington, DC enrol | | 17 - 20 Jul | Washington, DC enrol | | 14 - 17 Aug | New York enrol | | 18 - 21 Sep | Washington, DC enrol | | 18 - 21 Dec | New York enrol |
For AnyWare enrollments, please register at least 7 days prior to the start of the course.
More Dates and Locations.
|
|
On-Site &
Custom Training
Bring this or any Learning Tree course to your location or have it customized for your organization.
|
|
Kursdeltagarnas genomsnittsbedömning
|
De senaste 12 månadernas bedömningar |
|
5 stjärnor:
|
|
70 % |
|
4 stjärnor:
|
|
28 % |
|
3 stjärnor:
|
|
2 % |
|
2 stjärnor:
|
|
0 % |
|
1 stjärna:
|
|
0 % |
|
"Learning Tree-kurserna har definitivt hjälpt mig att uppnå mina utbildningsmål. Jag kan ärligt säga att efter att ha gått en kurs känns det som om man verkligen förstått ämnet. Om man jobbar med ett problem senare på kontoret är kursens exempel något man kan ha nytta av, vilket befäster det man lärt sig på kursen ytterligare." |
|
 |
|