Spring Recipes: A Problem-Solution Approach
Spring addresses most aspects of Java/Java EE application development and offers simple solutions to them. By using Spring, you will be lead to use industry best practices to design and implement your applications. The releases of Spring 2.x have added many improvements and new features to the 1.x versions. Spring Recipes: A Problem�Solution Approach focuses on the latest Spring 2.5 features for building enterprise Java
Spring Recipes covers Spring 2.5 from basic to advanced, including Spring IoC container, Spring AOP and AspectJ, Spring data access support, Spring transaction management, Spring Web and Portlet MVC, Spring testing
support, Spring support for remoting, EJB
, JMS, JMX, E�mail, scheduling, and scripting languages. This book also introduces several common Spring Portfolio projects that will bring significant value to your application development, including Spring Security, Spring Web Flow, and Spring Web Services.
The topics in this book are introduced by complete and real�world code examples that you can follow step by step. Instead of abstract descriptions on complex concepts, you will find live examples in this book. When you start a new project, you can consider copying the code and configuration files from this book, and then modifying them for your needs. This can save you a great deal of work over creating a project from scratch.
What you�ll learn
Installing the Spring framework and Spring IDE
, using the Spring IoC container and the Spring application context.
Understanding AOP concepts, using classic and new Spring AOP, integrating Spring with AspectJ, and load�time weaving aspects.
Using Spring to simplify data access (with JDBC
, Hibernate, and JPA) and manage transactions programmatically and declaratively.
Building web applications and portlets with Spring Web MVC and Portlet MVC, and integrating Spring with Struts
, and DWR.
Understanding the unit testing and integration testing concepts, and Spring�s unit and integration testing support (on JUnit
3.8, JUnit 4, and TestNG
Using Spring�s support for remoting technologies (RMI, Hessian, Burlap, and HTTP Invoker), EJB, JMS, JMX, E-mail, scheduling, and scripting languages.
Understanding security concepts (authentication, authorization, and access control), and securing web applications using Spring Security.
Managing complex web application page flows using Spring Web Flow, and integrating Spring Web Flow with JSF.
Exposing contract�last web services using XFire, and developing contract�first web services using Spring Web Services.
Who is this book for?
This book is for Java developers who would like to gain hands�on experience rapidly on Java/Java EE development using the Spring framework. If you are already a developer using Spring in your projects, you can also use this book as a reference, and you�ll find the code examples very useful.
You don�t need much Java EE experience to read this book. However, it assumes that you know the basics of object�oriented programming with Java (e.g., creating a class/interface, implementing an interface, extending a base class, running a main class, setting up your classpath, and so on). It also assumes you have basic knowledge on web and database concepts and know how to create dynamic web pages and query databases with SQL statements.
Gary Mak has been a technical architect and application developer on the enterprise Java platform for six years. In his career, Gary has developed a number of Java�based software projects, most of which are core application frameworks and software tools. He enjoys designing and implementing the complex parts of software projects.
Gary is a Sun certified Java programmer and has a master�s degree in computer science. His research interests include object�oriented technology, aspect�oriented technology, design patterns
, and software reuse. Gary specializes in building enterprise applications on frameworks including Spring, Hibernate, JPA, Struts, JSF, and Tapestry. He has been using the Spring framework in his projects for four years, since Spring version 1.0. Gary is also an instructor of courses on enterprise Java, Spring, Hibernate, Web Services, and agile development. He has written a series of Spring and Hibernate tutorials as course materials, parts of which are open to the public, and they�re gaining popularity in the Java community. In his spare time, he enjoys playing tennis and watching tennis competitions.