Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
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
360
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
What's new in Spring Modulith?
olivergierke
1
200
Domain-centric? Why Hexagonal, Onion, and Clean Architecture Are Answers to the Wrong Question
olivergierke
4
1.3k
It Takes Two to Tango – Designing Module Interactions in Modulithic Spring Applications
olivergierke
5
760
Bottom-Up Architecture – Bridging the Achitecture Code Gap
olivergierke
4
1k
Spring Modulith – A Deep Dive
olivergierke
9
4.8k
Spring for the Architecturally Curious Developer
olivergierke
5
1.9k
Spring Boot 3 & Spring Framework 6
olivergierke
4
2.1k
Architecturally-evident Java Applications with jMolecules
olivergierke
9
3k
A Deep Dive into Spring Application Events
olivergierke
12
3.4k
Other Decks in Programming
See All in Programming
tparseでgo testの出力を見やすくする
utgwkk
2
250
これならできる!個人開発のすゝめ
tinykitten
PRO
0
110
脳の「省エネモード」をデバッグする ~System 1(直感)と System 2(論理)の切り替え~
panda728
PRO
0
100
WebRTC、 綺麗に見るか滑らかに見るか
sublimer
1
190
DevFest Android in Korea 2025 - 개발자 커뮤니티를 통해 얻는 가치
wisemuji
0
160
生成AIを利用するだけでなく、投資できる組織へ
pospome
2
360
Context is King? 〜Verifiability時代とコンテキスト設計 / Beyond "Context is King"
rkaga
10
1.3k
AIの誤りが許されない業務システムにおいて“信頼されるAI” を目指す / building-trusted-ai-systems
yuya4
6
3.7k
マスタデータ問題、マイクロサービスでどう解くか
kts
0
110
AIコーディングエージェント(NotebookLM)
kondai24
0
210
SwiftUIで本格音ゲー実装してみた
hypebeans
0
420
宅宅自以為的浪漫:跟 AI 一起為自己辦的研討會寫一個售票系統
eddie
0
510
Featured
See All Featured
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
390
Reflections from 52 weeks, 52 projects
jeffersonlam
355
21k
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
63
35k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Color Theory Basics | Prateek | Gurzu
gurzu
0
140
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
0
81
Producing Creativity
orderedlist
PRO
348
40k
The Cost Of JavaScript in 2023
addyosmani
55
9.4k
Testing 201, or: Great Expectations
jmmastey
46
7.8k
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
67
Imperfection Machines: The Place of Print at Facebook
scottboms
269
13k
From π to Pie charts
rasagy
0
86
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!