Skip to content

Commit a2a4929

Browse files
committed
Add "What's new in Spring 3.1" to ref docs
Issue: SPR-8399
1 parent 3af4cdb commit a2a4929

File tree

2 files changed

+183
-0
lines changed

2 files changed

+183
-0
lines changed
Lines changed: 182 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,182 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3+
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
4+
<chapter id="new-in-3.1">
5+
<title>New Features and Enhancements in Spring 3.1</title>
6+
7+
<para>Building on the support introduced in Spring 3.0, Spring 3.1 is
8+
currently under development, and at the time of this writing Spring 3.1 M2
9+
has just been released.</para>
10+
11+
<section id="new-in-3.1-features-overview">
12+
<title>Overview of new features</title>
13+
14+
<para>This is a list of new features for Spring 3.1. Most features
15+
do not yet have dedicated reference documentation but do have
16+
Javadoc. In these cases, fully-qualified classnames are given.</para>
17+
18+
<section>
19+
<title>Cache Abstraction</title>
20+
<itemizedlist>
21+
<listitem>
22+
<para><xref linkend="cache"/></para>
23+
</listitem>
24+
<listitem>
25+
<para><ulink
26+
url="http://blog.springsource.com/2011/02/23/spring-3-1-m1-caching/">
27+
Cache Abstraction</ulink> (SpringSource team blog)</para>
28+
</listitem>
29+
</itemizedlist>
30+
</section>
31+
<section>
32+
<title>Bean Definition Profiles</title>
33+
<itemizedlist>
34+
<listitem>
35+
<para><ulink
36+
url="http://blog.springsource.com/2011/02/11/spring-framework-3-1-m1-released/">
37+
XML profiles</ulink> (SpringSource Team Blog)</para>
38+
</listitem>
39+
<listitem>
40+
<para><ulink
41+
url="http://blog.springsource.com/2011/02/14/spring-3-1-m1-introducing-profile/">
42+
Introducing @Profile</ulink> (SpringSource Team Blog)</para>
43+
</listitem>
44+
<listitem>
45+
<para>See org.springframework.context.annotation.Configuration Javadoc</para>
46+
</listitem>
47+
<listitem>
48+
<para>See org.springframework.context.annotation.Profile Javadoc</para>
49+
</listitem>
50+
</itemizedlist>
51+
</section>
52+
<section>
53+
<title>Environment Abstraction</title>
54+
<itemizedlist>
55+
<listitem>
56+
<para><ulink
57+
url="http://blog.springsource.com/2011/02/11/spring-framework-3-1-m1-released/">
58+
Environment Abstraction</ulink> (SpringSource Team Blog)</para>
59+
</listitem>
60+
<listitem>
61+
<para>See org.springframework.core.env.Environment Javadoc</para>
62+
</listitem>
63+
</itemizedlist>
64+
</section>
65+
<section>
66+
<title>PropertySource Abstraction</title>
67+
<itemizedlist>
68+
<listitem>
69+
<para><ulink
70+
url="http://blog.springsource.com/2011/02/15/spring-3-1-m1-unified-property-management/">
71+
Unified Property Management</ulink> (SpringSource Team Blog)</para>
72+
</listitem>
73+
<listitem>
74+
<para>See org.springframework.core.env.Environment Javadoc</para>
75+
</listitem>
76+
<listitem>
77+
<para>See org.springframework.core.env.PropertySource Javadoc</para>
78+
</listitem>
79+
<listitem>
80+
<para>See org.springframework.context.annotation.PropertySource Javadoc</para>
81+
</listitem>
82+
</itemizedlist>
83+
</section>
84+
<section>
85+
<title>Code equivalents for Spring's XML namespaces</title>
86+
<para>Code-based equivalents to popular Spring XML namespace elements such as
87+
&lt;tx:annotation-driven/&gt; and &lt;mvc:annotation-driven&gt; have been
88+
developed, in the form of <interfacename>@Enable</interfacename> annotations,
89+
for use in conjunction with Spring's <interfacename>@Configuration</interfacename>
90+
classes.</para>
91+
<itemizedlist>
92+
<listitem>
93+
<para>See org.springframework.scheduling.annotation.Configuration Javadoc</para>
94+
</listitem>
95+
<listitem>
96+
<para>See org.springframework.scheduling.annotation.EnableAsync Javadoc</para>
97+
</listitem>
98+
<listitem>
99+
<para>See org.springframework.scheduling.annotation.EnableScheduling
100+
Javadoc</para>
101+
<para>See
102+
org.springframework.scheduling.annotation.EnableTransactionManagement
103+
Javadoc</para>
104+
</listitem>
105+
<listitem>
106+
<para>See org.springframework.scheduling.annotation.EnableWebMvc Javadoc</para>
107+
</listitem>
108+
</itemizedlist>
109+
</section>
110+
<section>
111+
<title>Builder-style APIs for code-based Hibernate configuration</title>
112+
<para><classname>SessionFactoryBuilder</classname> and
113+
<classname>AnnotationSessionFactoryBuilder</classname> classes have been designed
114+
for use within <interfacename>@Bean</interfacename> methods in
115+
<interfacename>@Configuration</interfacename> classes.</para>
116+
<itemizedlist>
117+
<listitem>
118+
<para>See org.springframework.orm.hibernate3.SessionFactoryBuilder Javadoc</para>
119+
</listitem>
120+
<listitem>
121+
<para>See
122+
org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBuilder
123+
Javadoc</para>
124+
</listitem>
125+
</itemizedlist>
126+
</section>
127+
<section>
128+
<title>TestContext framework support for @Configuration classes</title>
129+
<para>The <interfacename>@ContextConfiguration</interfacename> annotation now
130+
supports supplying <interfacename>@Configuration</interfacename> classes for
131+
configuring the Spring <classname>TestContext</classname></para>
132+
<itemizedlist>
133+
<listitem>
134+
<para>See org.springframework.test.context.ContextConfiguration Javadoc</para>
135+
</listitem>
136+
</itemizedlist>
137+
</section>
138+
<section>
139+
<title>c: namespace for more concise constructor injection</title>
140+
<itemizedlist>
141+
<listitem>
142+
<para><xref linkend="beans-c-namespace"/></para>
143+
</listitem>
144+
</itemizedlist>
145+
</section>
146+
<section>
147+
<title>Support for injection against non-standard JavaBeans setters</title>
148+
<para>Prior to Spring 3.1, in order to inject against a property method it had to
149+
conform strictly to JavaBeans property signature rules, namely that any 'setter'
150+
method must be void-returning. It is now possible in Spring XML to specify
151+
setter methods that return any object type. This is useful when considering
152+
designing APIs for method-chaining, where setter methods return a reference to
153+
'this'.</para>
154+
</section>
155+
<section>
156+
<title>Support for Servlet 3 code-based configuration of Servlet Container</title>
157+
<para>The new <interfacename>WebApplicationInitializer</interfacename> builds atop
158+
Servlet 3.0's <interfacename>ServletContainerInitializer</interfacename> support
159+
to provide a programmatic alternative to the traditional web.xml.</para>
160+
<itemizedlist>
161+
<listitem>
162+
<para>See org.springframework.web.WebApplicationInitializer Javadoc</para>
163+
</listitem>
164+
<listitem>
165+
<para><ulink url="http://bit.ly/lrDHja">Diff from Spring's Greenhouse
166+
reference application</ulink> demonstrating migration from web.xml to
167+
<interfacename>WebApplicationInitializer</interfacename></para>
168+
</listitem>
169+
</itemizedlist>
170+
</section>
171+
<section>
172+
<title>Support for Servlet 3 MultipartResolver</title>
173+
<itemizedlist>
174+
<listitem>
175+
<para>See
176+
org.springframework.web.multipart.support.StandardServletMultipartResolver
177+
Javadoc</para>
178+
</listitem>
179+
</itemizedlist>
180+
</section>
181+
</section>
182+
</chapter>

spring-framework-reference/src/spring-framework-reference.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -241,6 +241,7 @@
241241
<title>What's New in Spring 3</title>
242242

243243
<xi:include href="new-in-3.0.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
244+
<xi:include href="new-in-3.1.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
244245
</part>
245246

246247
<part id="spring-core">

0 commit comments

Comments
 (0)