the Eclipse IDE, Spring IDE, Mylyn (a task-based development environment in Eclipse), Maven for
Eclipse, AspectJ Development Tool, and many other useful Eclipse plug-ins into a single package. In
each new version, more features are being added, such as Groovy scripting language support, Spring
Roo support, and SpringSource tcServer (an application server with paid support offered by
SpringSource that was built on top of the Tomcat server) support. The sample source code in this topic
for each chapter, as well as the code for the sample application, will all be developed in STS, so you need
to download STS
and import the projects. (STS will be discussed in detail in Appendix A.) In case you want to know more
about using STS for Spring application development immediately, feel free to jump ahead to Appendix A.
The Spring Security Project
The Spring Security project (http://static.springsource.org/spring-security/site/index.html),
formerly known as the Acegi Security System for Spring, is another important project within the Spring
portfolio. Spring Security provides comprehensive support for both web application and method-level
security. It tightly integrates with the Spring Framework and other commonly used authentication
mechanisms, such as HTTP basic authentication, form-based login, X.509 certificate, SSO product (e.g.,
SiteMinder), and so on. It provides role-based access control to application resources, and in
applications with more complicated security requirements (e.g., data segregations), Access Control List
(ACL) is supported. However, Spring Security is mostly used in securing web applications, which we will
discuss in detail in Chapter 17.
Spring Batch and Integration
Needless to say, batch job execution and integration are common use cases in applications. To cope
with this need and to make it easy for developers in these areas, Spring created the Spring Batch and
Spring Integration projects. Spring Batch provides a common framework and various policies for batch
job implementation, reducing a lot of boilerplate code. By implementing the Enterprise Integration
Pattern (EIP), Spring Integration can make integrating Spring applications with external systems easy.
We'll discuss the details in Chapter 20.
Many Other Projects
We've covered the core modules of Spring and some of the major projects within the Spring
portfolio, but there still many other projects that have been driven by the need of the community
for different requirements. Some examples include Spring BlazeDS for Flex integration, Spring
Mobile, Spring Dynamic Modules, Spring Social, Spring AMQP, and so on. Those projects will not
be covered in this topic. For details, you can refer to the SpringSource web site
(www.springsource.org/projects).
Alternatives to Spring
Going back to our previous comments on the number of open source projects, you should not be
surprised to learn that Spring is not the only framework offering Dependency Injection features or full
end-to-end solutions for building applications. In fact, there are almost too many projects to mention. In
the spirit of being open, we include a brief discussion of several of these frameworks here, but it is our
belief that none of these platforms offers quite as comprehensive a solution as that available in Spring.
Search WWH :
Custom Search
Previous Page
Spring Framework 3 Topic Index
Next Page
Spring Framework 3 Bookmarks
Home