Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Spring 4 - A Guided Tour
Search
Oliver Drotbohm
October 30, 2013
Programming
1
350
Spring 4 - A Guided Tour
Slides of my talk a JAX London, 2013
Oliver Drotbohm
October 30, 2013
Tweet
Share
More Decks by Oliver Drotbohm
See All by Oliver Drotbohm
It Takes Two to Tango – Designing Module Interactions in Modulithic Spring Applications
olivergierke
5
680
Bottom-Up Architecture – Bridging the Achitecture Code Gap
olivergierke
4
920
Spring Modulith – A Deep Dive
olivergierke
8
4.4k
Spring for the Architecturally Curious Developer
olivergierke
5
1.8k
Spring Boot 3 & Spring Framework 6
olivergierke
4
2k
Architecturally-evident Java Applications with jMolecules
olivergierke
9
2.9k
A Deep Dive into Spring Application Events
olivergierke
12
3.3k
Building Better Monoliths – Modulithic Applications with Spring Boot
olivergierke
4
960
Spring HATEOAS – Hypermedia APIs with Spring
olivergierke
1
750
Other Decks in Programming
See All in Programming
AI コーディングエージェントの時代へ:JetBrains が描く開発の未来
masaruhr
1
200
Google Agent Development Kit でLINE Botを作ってみた
ymd65536
2
260
ペアプロ × 生成AI 現場での実践と課題について / generative-ai-in-pair-programming
codmoninc
2
21k
AI Agent 時代のソフトウェア開発を支える AWS Cloud Development Kit (CDK)
konokenj
6
800
MCPを使ってイベントソーシングのAIコーディングを効率化する / Streamlining Event Sourcing AI Coding with MCP
tomohisa
0
170
生成AI時代のコンポーネントライブラリの作り方
touyou
1
290
Deep Dive into ~/.claude/projects
hiragram
14
13k
20250708_JAWS_opscdk
takuyay0ne
2
130
マッチングアプリにおけるフリックUIで苦労したこと
yuheiito
0
190
Hack Claude Code with Claude Code
choplin
7
2.5k
効率的な開発手段として VRTを活用する
ishkawa
0
160
明示と暗黙 ー PHPとGoの インターフェイスの違いを知る
shimabox
2
620
Featured
See All Featured
Site-Speed That Sticks
csswizardry
10
700
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
47
9.6k
Done Done
chrislema
184
16k
Building Adaptive Systems
keathley
43
2.7k
Gamification - CAS2011
davidbonilla
81
5.4k
Measuring & Analyzing Core Web Vitals
bluesmoon
7
520
Speed Design
sergeychernyshev
32
1k
Bash Introduction
62gerente
613
210k
We Have a Design System, Now What?
morganepeng
53
7.7k
A Modern Web Designer's Workflow
chriscoyier
695
190k
Into the Great Unknown - MozCon
thekraken
40
1.9k
Optimizing for Happiness
mojombo
379
70k
Transcript
Spring 4 A guided tour ! ! ! ! !
! Oliver Gierke
Oliver Gierke ! Pivotal Spring Data Lead JPA 2.1 Expert
Group ! !
[email protected]
www.olivergierke.de olivergierke
Sample code https://github.com/olivergierke/spring4-guided-tour
Where do we come from?
Spring 3.x
Spring 3.x Annotation based component model Java Configuration Composable Annotations
SpEL REST @ MVC, Async
Spring 3.x Declarative validation, formatting, caching and scheduling Spring MVC
integration tests JSR-330, JSR-303 JPA 2.0, Servlet 3.0
Demo
Spring 4
Pruning Removed deprecated packages and methods
Spec upgrades JMS 2.0 JTA 1.2 JPA 2.1 Bean Validation
1.1 JSR-236 Concurrency
Get groovy Groovy BeanBuilder GenericGroovyApplicationContext
Conditional bean definitions @Conditional More generalized version of @Profile Spring
Boot makes heavy use of that
Composable annotations
Demo
Autowiring with generics
Demo
Hypermedia
Demo
Messaging and WebSockets
Messaging and WebSockets Messaging abstraction from SI JSR-356 (+SockJS, Stomp
etc.) Highly recommended talk by Rossen Stoyanchev http://bit.ly/spring4-websockets
JDK 8 Support
The state of Java8 Current OpenJDK 8 works for us
Best IDE support: IntelliJ 12 STS has Java 8 support preview
JDK 8 Support Lambda expressions Method references JSR-310 DateTime Repeatable
annotations Parameter name discovery
Lambda expressions SAM types Works with previously existing callbacks JdbcTemplate,
JmsTemplate, TransactionTemplate etc.
Demo
Parameter names Advanced reflection support Parameter names on interfaces
"Should I upgrade to Spring 4.0 already?
Upgrade We strongly recommend to upgrade RC in a few
days, GA by December Fully compatible with Java 6 and 7 Spring 3.2 in maintenance mode
What is Spring IO?
None
None
Spring Boot
Spring Boot Application dependency management Sensible configuration defaulting Easy application
bootstrap
Demo
Spring Data JPA 3:50-4:50pm - Edward 1-2
Spring eXchange Nov. 14th-15th http://bit.ly/spring-exchange
Questions?
Thanks!