JBoss Seam Framework
Founded by Gavin King (the creator of the Hibernate ORM library), the Seam Framework
(www.seamframework.org) is another full-blown DI-based framework; it contains layers from web
application front-end (JSF), the business logic layer (EJB 3), and JPA for persistence. As you can see, the
main difference between Seam and Spring is that the Seam framework is built entirely on JEE standards.
JBoss also contributes the ideas in the Seam framework back to the JCP and becomes JSR-299 ("Contexts
and Dependency Injection for the Java EE Platform").
Google Guice
Another popular DI framework is Google Guice (http://code.google.com/p/google-guice). Led by the
search engine giant Google, Guice is a lightweight framework that focuses on providing DI for
application configuration management. It was also the reference implementation of the JSR-330
specification ("Dependency Injection for Java").
PicoContainer
PicoContainer (www.picocontainer.org) is an exceptionally small (around 300KB) DI container that
allows you to use DI for your application without introducing any dependencies other than
PicoContainer. Because PicoContainer is nothing more than a DI container, you may find that as your
application grows, you need to introduce another framework, such as Spring, in which case you would
have been better off using Spring from the start. However, if all you need is a tiny DI container, then
PicoContainer is a good choice, but since Spring packages the DI container separate from the rest of the
framework, you can just as easily use that and keep the flexibility for the future.
JEE 6 Container
As discussed previously, the concept of DI was widely adopted and also realized by JCP. As a result, in
JEE 6, the technology stack (EJB 3.1, JPA 2.1, JSR-299, JSR-330, etc.) was mostly revamped to adopt DI
and simplify the development of JEE applications. So, when you are developing an application for
JEE 6­compliant application servers, you can use standard DI techniques across all layers. At the time of
writing, popular JEE 6­compliant application servers include JBoss AS 7, Oracle Glassfish 3.1, and
WebSphere 8.
Summary
In this chapter, we presented you with a high-level view of the Spring Framework complete with
discussions of all the major features, and we guided you to the relevant sections of the topic where
these features are discussed in detail. After reading this chapter, you should have some kind of idea
about what Spring can do for you; all that remains is to see how it can do it. On that note, it is time to
proceed.
In the next chapter, we discuss all the information you need to know to get up and running with a
basic Spring application. We show you how to obtain the Spring Framework and discuss the packaging
options, the test suite, and the documentation. Also, Chapter 2 introduces some basic Spring code,
including the time-honored "Hello World!" example in all its DI-based glory.
Search WWH :
Custom Search
Previous Page
Spring Framework 3 Topic Index
Next Page
Spring Framework 3 Bookmarks
Home