346 lines
10 KiB
XML
346 lines
10 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
|
|
"http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd">
|
|
|
|
<book xmlns:xi="http://www.w3.org/2001/XInclude">
|
|
<bookinfo>
|
|
<title>Reference Documentation</title>
|
|
<subtitle>(Work in progress)</subtitle>
|
|
<productname>Spring Framework</productname>
|
|
<releaseinfo>3.0.0.RC1</releaseinfo>
|
|
<mediaobject>
|
|
<imageobject role="fo">
|
|
<imagedata align="center" fileref="images/logo-pdf.png"
|
|
format="PNG" width="240"/>
|
|
</imageobject>
|
|
</mediaobject>
|
|
<authorgroup>
|
|
<author>
|
|
<firstname>Rod</firstname>
|
|
<surname>Johnson</surname>
|
|
</author>
|
|
<author>
|
|
<firstname>Juergen</firstname>
|
|
<surname>Hoeller</surname>
|
|
</author>
|
|
<author>
|
|
<firstname>Keith</firstname>
|
|
<surname>Donald</surname>
|
|
</author>
|
|
<author>
|
|
<firstname>Colin</firstname>
|
|
<surname>Sampaleanu</surname>
|
|
</author>
|
|
<author>
|
|
<firstname>Rob</firstname>
|
|
<surname>Harrop</surname>
|
|
</author>
|
|
<author>
|
|
<firstname>Thomas</firstname>
|
|
<surname>Risberg</surname>
|
|
</author>
|
|
<author>
|
|
<firstname>Alef</firstname>
|
|
<surname>Arendsen</surname>
|
|
</author>
|
|
<author>
|
|
<firstname>Darren</firstname>
|
|
<surname>Davison</surname>
|
|
</author>
|
|
<author>
|
|
<firstname>Dmitriy</firstname>
|
|
<surname>Kopylenko</surname>
|
|
</author>
|
|
<author>
|
|
<firstname>Mark</firstname>
|
|
<surname>Pollack</surname>
|
|
</author>
|
|
<author>
|
|
<firstname>Thierry</firstname>
|
|
<surname>Templier</surname>
|
|
</author>
|
|
<author>
|
|
<firstname>Erwin</firstname>
|
|
<surname>Vervaet</surname>
|
|
</author>
|
|
<author>
|
|
<firstname>Portia</firstname>
|
|
<surname>Tung</surname>
|
|
</author>
|
|
<author>
|
|
<firstname>Ben</firstname>
|
|
<surname>Hale</surname>
|
|
</author>
|
|
<author>
|
|
<firstname>Adrian</firstname>
|
|
<surname>Colyer</surname>
|
|
</author>
|
|
<author>
|
|
<firstname>John</firstname>
|
|
<surname>Lewis</surname>
|
|
</author>
|
|
<author>
|
|
<firstname>Costin</firstname>
|
|
<surname>Leau</surname>
|
|
</author>
|
|
<author>
|
|
<firstname>Mark</firstname>
|
|
<surname>Fisher</surname>
|
|
</author>
|
|
<author>
|
|
<firstname>Sam</firstname>
|
|
<surname>Brannen</surname>
|
|
</author>
|
|
<author>
|
|
<firstname>Ramnivas</firstname>
|
|
<surname>Laddad</surname>
|
|
</author>
|
|
<author>
|
|
<firstname>Arjen</firstname>
|
|
<surname>Poutsma</surname>
|
|
</author>
|
|
<author>
|
|
<firstname>Chris</firstname>
|
|
<surname>Beams</surname>
|
|
</author>
|
|
<author>
|
|
<firstname>Tareq</firstname>
|
|
<surname>Abed Rabbo</surname>
|
|
</author>
|
|
</authorgroup>
|
|
<copyright>
|
|
<year>2004-2009</year>
|
|
<holder>Rod Johnson, Juergen Hoeller, Keith Donald, Colin Sampaleanu, Rob Harrop, Alef Arendsen, Thomas Risberg, Darren Davison,
|
|
Dmitriy Kopylenko, Mark Pollack, Thierry Templier, Erwin Vervaet, Portia Tung, Ben Hale, Adrian Colyer, John Lewis,
|
|
Costin Leau, Mark Fisher, Sam Brannen, Ramnivas Laddad, Arjen Poutsma, Chris Beams, Tareq Abed Rabbo
|
|
</holder>
|
|
</copyright>
|
|
<legalnotice>
|
|
<para>Copies of this document may be made for your own use and for
|
|
distribution to others, provided that you do not charge any
|
|
fee for such copies and further provided that each copy
|
|
contains this Copyright Notice, whether distributed in print
|
|
or electronically.</para>
|
|
</legalnotice>
|
|
</bookinfo>
|
|
<!-- front matter -->
|
|
<toc/>
|
|
<part id="spring-introduction">
|
|
<title>Overview of Spring Framework</title>
|
|
<xi:include href="preface.xml"/>
|
|
<xi:include href="overview.xml"/>
|
|
</part>
|
|
<part id="spring-whats-new">
|
|
<title>What's New in Spring 3.0</title>
|
|
<xi:include href="new-in-3.xml"/>
|
|
</part>
|
|
<part id="spring-core">
|
|
<title>Core Technologies</title>
|
|
<partintro id="spring-core-intro">
|
|
<para>
|
|
This part of the reference documentation covers
|
|
all of those technologies that are absolutely integral
|
|
to the Spring Framework.
|
|
</para>
|
|
<para>
|
|
Foremost amongst these is the Spring Framework's
|
|
Inversion of Control (IoC) container. A thorough treatment
|
|
of the Spring Framework's IoC container is closely followed
|
|
by comprehensive coverage of Spring's Aspect-Oriented
|
|
Programming (AOP) technologies. The Spring Framework has
|
|
its own AOP framework, which is conceptually easy to understand,
|
|
and which successfully addresses the 80% sweet spot of AOP
|
|
requirements in Java enterprise programming.
|
|
</para>
|
|
<para>
|
|
Coverage of Spring's integration with AspectJ (currently
|
|
the richest - in terms of features - and certainly most
|
|
mature AOP implementation in the Java enterprise space)
|
|
is also provided.
|
|
</para>
|
|
<para>
|
|
Finally, the adoption of the test-driven-development (TDD)
|
|
approach to software development is certainly advocated by
|
|
the Spring team, and so coverage of Spring's support for
|
|
integration testing is covered (alongside best practices for
|
|
unit testing). The Spring team has found that the correct
|
|
use of IoC certainly does make both unit and integration
|
|
testing easier (in that the presence of setter methods and
|
|
appropriate constructors on classes makes them
|
|
easier to wire together on a test without having to set up
|
|
service locator registries and suchlike)... the chapter
|
|
dedicated solely to testing will hopefully convince you of
|
|
this as well.
|
|
</para>
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para><xref linkend="beans"/></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><xref linkend="resources"/></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><xref linkend="validation"/></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><xref linkend="expressions"/></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><xref linkend="aop"/></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><xref linkend="aop-api"/></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><xref linkend="testing"/></para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
</partintro>
|
|
<xi:include href="beans.xml"/>
|
|
<xi:include href="resources.xml"/>
|
|
<xi:include href="validation.xml"/>
|
|
<xi:include href="expressions.xml"/>
|
|
<xi:include href="aop.xml"/>
|
|
<xi:include href="aop-api.xml"/>
|
|
<xi:include href="testing.xml"/>
|
|
</part>
|
|
<part id="spring-data-tier">
|
|
<title>Data Access</title>
|
|
<partintro id="spring-data-tier-intro">
|
|
<para>
|
|
This part of the reference documentation is concerned
|
|
with data access and the interaction between the data access
|
|
layer and the business or service layer.
|
|
</para>
|
|
<para>
|
|
Spring's comprehensive transaction management support is
|
|
covered in some detail, followed by thorough coverage of
|
|
the various data access frameworks and
|
|
technologies that the Spring Framework integrates with.
|
|
</para>
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para><xref linkend="transaction"/></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><xref linkend="dao"/></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><xref linkend="jdbc"/></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><xref linkend="orm"/></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><xref linkend="oxm"/></para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
</partintro>
|
|
<xi:include href="transaction.xml"/>
|
|
<xi:include href="dao.xml"/>
|
|
<xi:include href="jdbc.xml"/>
|
|
<xi:include href="orm.xml"/>
|
|
<xi:include href="oxm.xml"/>
|
|
</part>
|
|
<part id="spring-web">
|
|
<title>The Web</title>
|
|
<partintro id="spring-web-intro">
|
|
<para>
|
|
This part of the reference documentation covers the
|
|
Spring Framework's support for the presentation tier
|
|
(and specifically web-based presentation tiers).
|
|
</para>
|
|
<para>
|
|
The Spring Framework's own web framework,
|
|
<link linkend="mvc">Spring Web MVC</link>, is covered in
|
|
the first couple of chapters. A number of the remaining
|
|
chapters in this part of the reference documentation are
|
|
concerned with the Spring Framework's integration with
|
|
other web technologies, such as <link linkend="struts">Struts</link>
|
|
and <link linkend="jsf">JSF</link> (to name but two).
|
|
</para>
|
|
<para>
|
|
This section concludes with coverage of Spring's MVC
|
|
<link linkend="portlet">portlet framework</link>.
|
|
</para>
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para><xref linkend="mvc"/></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><xref linkend="view"/></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><xref linkend="web-integration"/></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><xref linkend="portlet"/></para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
</partintro>
|
|
<xi:include href="mvc.xml"/>
|
|
<xi:include href="view.xml"/>
|
|
<xi:include href="web-integration.xml"/>
|
|
<xi:include href="portlet.xml"/>
|
|
</part>
|
|
<part id="spring-integration">
|
|
<title>Integration</title>
|
|
<partintro id="spring-integration-intro">
|
|
<para>
|
|
This part of the reference documentation covers
|
|
the Spring Framework's integration with a number of Java EE
|
|
(and related) technologies.
|
|
</para>
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para><xref linkend="remoting"/></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><xref linkend="ejb"/></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><xref linkend="jms"/></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><xref linkend="jmx"/></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><xref linkend="cci"/></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><xref linkend="mail"/></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><xref linkend="scheduling"/></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><xref linkend="dynamic-language"/></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><xref linkend="metadata"/></para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
</partintro>
|
|
<xi:include href="remoting.xml"/>
|
|
<xi:include href="ejb.xml"/>
|
|
<xi:include href="jms.xml"/>
|
|
<xi:include href="jmx.xml"/>
|
|
<xi:include href="cci.xml"/>
|
|
<xi:include href="mail.xml"/>
|
|
<xi:include href="scheduling.xml"/>
|
|
<xi:include href="dynamic-languages.xml"/>
|
|
<xi:include href="metadata.xml"/>
|
|
</part>
|
|
<!-- back matter -->
|
|
<part id="spring-appendices">
|
|
<title>Appendices</title>
|
|
<xi:include href="classic-spring.xml"/>
|
|
<xi:include href="classic-aop-spring.xml"/>
|
|
<xi:include href="xsd-configuration.xml"/>
|
|
<xi:include href="xml-custom.xml"/>
|
|
<xi:include href="dtd.xml"/>
|
|
<xi:include href="spring.tld.xml"/>
|
|
<xi:include href="spring-form.tld.xml"/>
|
|
</part>
|
|
</book>
|