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
From Spring Boot 2.2 to Spring Boot 2.3
Search
Stéphane Nicoll
February 25, 2020
Programming
220
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
From Spring Boot 2.2 to Spring Boot 2.3
Stéphane Nicoll
February 25, 2020
More Decks by Stéphane Nicoll
See All by Stéphane Nicoll
Testing the Spring Framework
snicoll
0
500
Spring Boot 2.0 Web Applications
snicoll
5
1.7k
Spring Framework 5.0 Themes and Trends
snicoll
15
15k
Spring Boot 1.3 pour le web
snicoll
3
620
Cloud Native Apps with Spring Cloud
snicoll
1
530
From Zero to Hero with Spring Boot (extended version)
snicoll
2
1.6k
Master Spring Boot auto-configuration
snicoll
7
4.5k
De zéro à héros avec Spring Boot
snicoll
10
6k
"Bootiful" Applications with Spring Boot
snicoll
3
1.1k
Other Decks in Programming
See All in Programming
まずはプロンプトガイドを読もう、話はそれからだ
kiakiraki
1
230
進化を続けるGo toolsの現在地 / The Current State of Ever-Evolving Go Tools
hond0413
0
270
KotlinConf Extended South Korea 2026 Keynote
l2hyunwoo
0
120
生成AIで帳票OCRが「簡単に」作れる時代になった?
kon_shou
0
1.2k
PyConJP2026_wat_Python × Signal Processing: How to Draw Pictures with Sound Using Spectrogram Art
wat
0
570
[PyCon KR 2026] More Variants, More Diversity for AI Accelerators
achimnol
0
120
書籍「プロフェッショナルAI駆動開発」紹介スライド
juntaromatsumoto
0
780
Dockerfile CMD for Node.js
grazie1999
0
140
How I Won Prize Money at a Hackathon Using Codex and Symphony Alpha
yasei_no_otoko
0
130
ソフトウェアラスタライザ
fadis
1
720
属人化した知識を、 AIが辿れる地図にする
pkshadeck
PRO
1
220
片田舎のおっさん、 Swift Buildのダイアモンド問題解決の不具合修正PRを出すが、解決方法がキャッシュをしないようにすることであり、ビルド時間が伸びると言われてマージされないので高速化もする/swiftbuild
yimajo
0
310
Featured
See All Featured
How GitHub (no longer) Works
holman
316
150k
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
220
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
580
We Are The Robots
honzajavorek
0
310
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
400
A Tale of Four Properties
chriscoyier
163
24k
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
750
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9.2k
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.6k
The untapped power of vector embeddings
frankvandijk
2
1.8k
Evolving SEO for Evolving Search Engines
ryanjones
0
270
Transcript
© Copyright 2020 Pivotal Software, Inc. All rights Reserved. From
Spring Boot 2.2 to Spring Boot 2.3 Stéphane Nicoll - @snicoll
2019 Edition Recap October 7-10 2019 Austin Convention Center
None
None
None
Spring Boot 2.2
Java 13 https://github.com/spring-projects/spring-framework/wiki/Spring-Framework-Versions#jdk-version-range
Dependency management Upgrades
New Features
Important Features
None
RSocket
RSocket
Health Indicator Group
Health Indicator Group management.endpoint.health.group.liveness.include=ping management.endpoint.health.group.readiness.include=db,redis GET /actuator/health/liveness GET /actuator/health/readiness
Immutable Configuration Properties
Immutable Configuration Properties @ConfigurationProperties("acme") @ConstructorBinding public class AcmeProperties { private
final Duration timeout; private final DataSize bufferSize; private final Security security; public AcmeProperties(@DefaultValue("10s") Duration timeout, DataSize bufferSize, Security security) { this.timeout = timeout; this.bufferSize = bufferSize; this.security = security; } ... }
@ConfigurationProperties("acme") @ConstructorBinding data class AcmeProperties(val timeout: Duration = Duration.ofSeconds(10), val
bufferSize: DataSize?, val security: Security) { ... } https://github.com/snicoll/demo-immutable-config-props Immutable Configuration Properties
JUnit 5
JUnit 5 // @ExtendWith(SpringExtension.class) @SpringBootTest class MyApplicationTests { @Test void
resourceFileCreated(@TempDir Path tmpDir) { // ... } }
Performance
Performance • Startup time • Lazy initialization • Runtime performance
start.spring.io
None
None
None
Statistics
How many projects do we generate a year? 10K 100K
1M+
How many projects do we generate a year? 10K 100K
1M+ ✔ month
What are the top 3 countries?* India US China *
Sep 2018 - Sep 2019 #15
What’s the client split?* Web IDE CLI * Sep 2018
- Sep 2019
What’s the client split?* Web IDE CLI * Sep 2018
- Sep 2019 (without China)
⚡To Spring Boot 2.3⚡
Spring Framework 5.3
Spring Framework 5.3 • Preparing for JDK 17 LTS •
Embracing GraalVM native images • Wrap-up 5.x themes (RSocket, Coroutines)
Spring Boot 2.3
Spring Boot 2.3 • Container Support with Cloud Native Buildpacks
• Kubernetes Support • Dependency Upgrades (Spring Data) • 6 months release cadence (Apr 2020)
Support Policy
Support Policy October 2018 Spring Boot 2.1 GA August 2019
Spring Boot 1 EOL January 2020 Spring Framework 5.0/4.3 last release October 2019 Spring Boot 2.2 GA
April 2020 Spring Boot 2.3 GA October 2020 Spring Framework
5.3 / Spring Boot 2.4 GA December 2020 Spring Framework 5.1/4.3 EOL November 2020 Spring Boot 2.1 EOL Support Policy
© Copyright 2020 Pivotal Software, Inc. All rights Reserved. From
Spring Boot 2.2 to Spring Boot 2.3 & 2.4 @snicoll Thanks!