Developing with the Spring™ Framework Training Course
Course Summary
In this four-day Spring Framework Development training course you learn how to use the Spring Framework to create well-designed, testable business applications in an agile manner. This Spring course not only focuses on explaining Spring features and how to use them, but also on fundamental architectural issues. It's important to know how to use certain parts of a framework, but it's even more important to be able to decide when to use them.
[top] Duration
4 days.
[top] Objectives
- The Spring Lightweight Container Architecture, including Inversion of Control Agile, domain-driven design techniques with Spring
- Effective JDBC and Hibernate data access
- Declarative transaction management
- Pragmatic AOP
- Unit testing in isolation
- Rapid system integration testing
- Spring Web MVC
- Spring Security, Remoting, and JMX
[top] Audience
[top] Prerequisites
[top] Outline
Day 1 - Agile J2EE: Foundations
- Introduction to the lightweight container architecture and the Spring Application Context
- How Dependency Injection and TDD allow you to develop consistently structured, highly configurable, easily testable applications quickly
- How Spring helps you write better, more cohesive code, with a discussion on relevant OO design patterns
Day 2 - Effective Middle-tier Architecture
- Interactive, middle-tier design session with a realistic business case
- Effective persistence: how to build a persistence layer with Spring in best-practice fashion
- Analysis and tradeoffs of relevant persistence strategies, including Hibernate, TopLink, JDO, iBATIS, and Spring JDBC
- Transaction management strategies with Spring at the service layer
- Middle-tier unit and integration test strategies
Day 3 - Effective web architecture and design
- Illustration of Spring MVC's value-add capabilities with a realistic sample application
- Comparison with Struts
- Integration points with JSF and Tapestry, and when they might be appropriate
- Spring Web Flow, how to capture controlled navigations as reusable modules
- Integrating other view technologies such as JSP, PDF, Excel, Velocity, and Freemarker
- Effective web-tier unit and integration test strategies
Day 4 - Scaling up with AOP and Spring Enterprise Services
- Pragmatic Spring AOP in the middle-tier, with examples and without buzzwords
- Developing custom aspects with Spring
- Applying targeted advice at groups of Spring-managed services automatically
- Web, service-level, and instance level security with Acegi
- Transparent web services with Spring Remoting
- Building in manageability with Spring JMX
[top] Additional Notes
Since this class focuses on Spring as well as the theory of developing lightweight applications that are maintainable and extensible from the ground up, it is 40% theory-oriented. There is 60% lab-work.
Spring™ is a trademark of SpringSource, Inc. Java™ and all Java-based marks are trademarks or registered trademarks of Sun Microsystems, Inc. Marakana does not have any affiliation with these companies.
Marakana.com Runs on Java using Spring Framework

Marakana.com is written in Java using Spring and Hibernate frameworks. We deploy it on Apache Tomcat Application Server. Both Marakana Spark and Apache Tomcat are Java applications and thus run on Java Virtual Machine. Spark uses MySQL database for persistence. Our operating system of choice is Ubuntu Linux, for security and reliability reasons. So we practice what we teach. You will learn from real developers.